点击时反应获取id值

2024-04-24

我有以下内容:

    var SingleEditableModule = React.createClass({
        show_overlay: function(e) {
            console.log($(e.target).attr('id'));
        },
        render: function() {
            var show_overlay = this.show_overlay;
            return (
                <div className="large-4 small-12 columns">
                    <h3 className="title">{this.props.data.title}</h3>
                    <div className="month">
                        <p>
                            {this.props.data.month}
                        </p>
                    </div>
                    <div className="img-holder">
                        <div 
                            id={this.props.data.id} 
                            onClick={show_overlay} 
                            className="action_wrapper">
                                <span className="swap_trigger"></span>
                                <span className="action">
                                    {this.props.data.action}
                                </span>
                        </div>
                    </div>
                    <h4>{this.props.data.title_description}</h4>
                    <p>{this.props.data.description}</p>
                </div>
            );
        }
    });

当我单击“action_wrapper”来检索 id 值时,我得到了未定义的值。根据我的数据结构,我应该得到“D”或“E”:

var empty_modules_DE = [
    {
        id: 'D',
        title: 'Module D',
        title_description: 'Your first rotation',
        description: 'In your penultimate module, Module D, you have the option of taking electives and spending six weeks at any of Hult’s home campuses, or our rotation centers in Shanghai and New York. You can choose to stay for the next module and extend your stay to twelve weeks if you prefer to only rotate once.',
        action: 'click to choose a campus',
        month: 'june'
    },
    {
        id: 'E',
        title: 'Module E',
        title_description: 'Where to next?',
        description: 'For your final module, Module E, you can choose to take electives and spend six weeks at any of Hult’s seven campuses worldwide. That includes all five of our home campuses, and our rotation centers in Shanghai, New York, and Ashridge Estate, U.K.',
        action: 'click to choose a campus',
        month: 'june'
    }

];

1) 自从你使用 React.createClass, and 不是 es6 类, 所以React 会为你自动绑定

你只需要添加this.在函数之前:

 onClick={this.show_overlay} 

2) 你不需要使用jquery,因为在你的具体情况下,你可以从 this.props.data.id 获取 id

 show_overlay: function() {
      console.log(this.props.data.id);
 },

3) 有案例当你的 props 中没有 id 时,并且你想传递一些参数给函数,那么你可以使用bind

 onClick={this.show_overlay.bind(null,"someValue")}

然后在回调中

 show_overlay: function(someValue) {
      console.log(someValue);
 },

传递参数 jsfiddle 的示例 https://jsfiddle.net/h6oeffph/2/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

点击时反应获取id值 的相关文章

  • 纯函数可以异步吗?

    在浏览纯函数的定义时 它通常定义有两个特征 1 给定相同的输入应该产生相同的输出 2 不应产生任何副作用 这是否也意味着纯函数不应该是异步的 如果不是 怎么会这样 如果是的话 我很想看到 JavaScript 中异步纯函数的一些示例 是的
  • 角度 ng-messages 仅在 $touched 为 true 时显示

    我并没有做任何太特别的事情 我有一个输入 需要在每次击键时进行验证 如果验证失败 则显示错误 不要等待模糊事件来触发 touched 我以为这是默认情况 但显然不是 我正在使用有角度的材料和有角度的消息 我这样做是为了大写锁定检测 标记
  • JavaScript中有字符串池的概念吗?我们可以获取仅引用一个 String 对象的值/键吗?

    我有一个大型 json 映射 其中包含大约 100 万个对象 每个对象包含大约 200 个键值对 例如 key1 val1 key2 val2 key1 val3 key2 val4 正如您所看到的 键在这里被重复 每个键都意味着一个新的
  • 运行玩笑测试时,Firebase 在signInAnonymously() 上抛出“auth/network-request-failed”

    我正在使用 firebase 为我的应用程序 使用 create react app 构建 编写一些测试 并且我正在尝试匿名登录我的测试数据库 但认证失败 然而 所有其他 Firebase 操作 CRUD 都工作得很好 我还可以从在浏览器中
  • 使用 forEach 映射对象数组的 Object.entries 返回未定义,除非使用 console.log

    我有一个具有键值对的对象数组 我想在每个对象中找到特定的键并返回值 数组的示例 filterCounties StateName Delaware CountyName Kent FIPS 10001 Eligibles 2017 3329
  • Protractor:如何从字符串中删除多余的空格,就像我们在 java getText.trim() 中使用的那样

    如何从字符串中删除多余的空格 就像我们在中使用的那样java getText trim in 量角器 我这样使用 var columnvalue rows get 9 getText var columnvalue1 columnvalue
  • jQuery - 如何确定哪个链接被点击

    我有一个简单的 PHP 代码 可以生成n以下代码的副本 p class center Click Here to See Data p div class divSDB L2 div 它是使用 PHP 生成的 因此副本的数量预先未知 在另一
  • 跨多个子域的 WebAuthn

    我正在尝试在我的网站上设置 WebAuthn 身份验证流程 但遇到了问题 我希望我的用户能够在主网站 www domain com 上注册他们的设备 以便可以通过用户设置轻松访问 身份验证本身通过 IdP sso domain com 在不
  • IE8 中 JavaScript 日期未定义/NaN

    我用它来测试日期输入是否距今天的日期少于 7 天 它适用于除 IE9 之外的所有浏览器 var today new Date
  • 如何从 Selectize 中删除项目?

    有什么方法可以从 Selectize 中删除项目吗 这是我的示例列表 AMNT QTY NA 当我经过时NA它应该删除特定项目 fn removeSelectorValue function value var selectize this
  • 实现github.com文件无缝文件导航

    我刚刚在浏览 github 存储库时注意到最近的变化 当您选择文件或文件夹时 新文件会滑入并推出旧文件 使用 jquery 很容易做到这一点 但真正不同的是 URL 本身实际上发生了变化 因此书签仍然有效 我一直在努力为我正在开发的图书导航
  • Knockout.js——理解 foreach 和 with

    我一直在阅读 learn knockout js 教程并进行实验 有人可以解释为什么这有效吗 教程 单页应用程序 步骤 2 使用with chosenFolderData and foreach mails table class mail
  • Javascript `new` 运算符和原型

    假设我们创建一个名为 Shape 的函数 并在其原型上添加属性 name 和方法 toString var Shape function Shape prototype name Shape Shape prototype toString
  • Firebase 如何更新多个子项?

    我有很多这样的孩子的父母 Parent childe1 data childe2 data childe3 data childe4 data childe5 data 我怎样才能更新孩子们的信息 childe1 childe2 child
  • 双向数据绑定(Angular)与单向数据流(React/Flux)

    上周 我一直在试图弄清楚如何双向数据绑定 Angular https docs angularjs org guide databinding and 单向数据流 React Flux https youtu be i 969noyAM是不
  • 提交后清除 React 中的表单

    我试图在使用 Axios 创建表单提交后清除表单数据 消息处理良好 响应记录到页面 但每个文本字段中的数据在提交后仍保留在页面上 我尝试添加一个resetForm函数 我将表单设置回原来的空白状态 但这不起作用 import React C
  • 智能表 - 预选特定行

    我正在使用智能表 我需要预先选择特定行 因此 在加载我的列表后 我循环进入它并设置isSelected当我到达我想要选择的项目时属性 Preselect a row for var i 0 len scope displayCollecti
  • AngularJs 位置路径更改,无需重置所有控制器

    我的问题的简短版本是 如何更改 URL 而不需要触发路由更改或不需要运行当前显示页面上的所有控制器 Details 我有一个模板 显示在
  • 如何禁用 Aloha 编辑器工具栏?

    有没有办法像侧边栏一样禁用 Aloha 的 ExtJS 工具栏 Aloha settings modules aloha aloha jquery editables editable jQuery sidebar disabled tru
  • setInterval 会导致浏览器挂起吗?

    几年前 我被警告不要使用setInterval很长一段时间 因为如果被调用的函数运行时间超过指定的时间间隔 可能会导致浏览器挂起 然后无法跟上 setInterval function foo bar i 1 现在 我知道在循环中添加大量代

随机推荐

  • 使用环境变量设置 Hystrix 超时

    为了更改 Hystrix 的默认请求超时 1000ms 必须设置以下属性 hystrix command default execution isolation thread timeoutInMilliseconds 2000 对应的环境
  • 如何让浏览器(IE和Chrome)在脚本之前请求图像?

    Note 如果您是第一次阅读本文 您可以直接跳到更新 因为它更准确地解决了问题 所以我得到了一个网页 在头部我有一个 CSS 背景图像 在页面底部我加载我的脚本 由于脚本位于页面底部 CSS 位于页面顶部 我假设浏览器将首先加载图像 然而
  • 使用 ItemsSource 之前,项目集合必须为空

    如果我将 DataTrigger 放入一个简单的列表框中 我会收到此运行时异常 使用 ItemsSource 之前 项目集合必须为空 我的列表框没有数据触发 也不例外
  • 删除父级 DIV

    我有这个html代码 div class action some text a class delete action some a div div class action some text a class delete action
  • 将 r 中的数据帧转换为事务或 itemMatrix?

    我有一个数据data frame我想将其转换成的格式transactions or an itemMatrix 检查功能arules支持这两种数据格式这就是我问这个问题的原因 library arules 示例 1 从矩阵创建交易 a ma
  • 如何在primeng自动完成角度8中对建议嵌套列表进行分组

    我正在尝试对自动完成建议进行分组 并希望在 primeng 中呈现它们 我们如何在primeng中添加自定义模板 my data data id m1 name menu1 val D items id d1 name datanested
  • 修复重载运算符“+”的使用不明确?

    我使用 C 11 标准编写了以下代码 h file include Auxiliaries h class IntMatrix private Dimensions dimensions int data public int size c
  • Cocoa 脚本:返回“null”与“缺失值”

    看来 AppleScript 知道这个特殊值null 如何从基于 Cocoa 脚本的应用程序中为可编写脚本的属性返回这样的值 如果我回来nil NULL or NSNull对于来自我的基于 Cocoa 脚本的应用程序的可编写脚本的属性 ge
  • Bootstrap 右栏位于移动视图顶部

    我有一个像这样的引导页面 div class row div class col md 6 A div div class col md 6 B div div 好像 A B 因此 如果我在移动设备上查看它 A 列位于顶部 但我希望 B 列
  • 正则表达式大于零,保留 2 位小数

    我需要一个正则表达式来表示最多两位小数大于零的数值 并且个数列中可能有也可能没有零 我还应该添加 整数就可以了 请参阅下面的一些内容 但可能存在前导或尾随空格 Good values 1 0 1 1 12 123 12 92 092 092
  • 修复无效 JSON 的正则表达式

    我正在对服务进行 API 调用 但它返回无效的 JSON photo url 字段没有将 url 封装在引号中 我将它作为字符串 并尝试编写一个正则表达式来在 url 周围添加引号 我使用 Titanium 在 Javascript 中完成
  • XAMPP - 对于表“users”,用户“@”localhost”的 SELECT 命令被拒绝

    不久前 我删除并弄乱了 XAMPP 中的一些功能 我重新安装了它 并移动 重命名了我的文件夹和所有其他文件 所以我现在有了一个新的空的 xampp 目录 但是 当我尝试使用任何数据库功能时 它会出现如下错误 SELECT command d
  • Redis hash写入速度非常慢

    我面临一个非常奇怪的问题 使用 Redis 时 我的写入速度非常糟糕 在理想的情况下 写入速度应该接近 RAM 上的写入速度 这是我的基准 package redisbenchmark import redis clients jedis
  • AngularFireDatabase 不检索数据

    每当我使用 afDB list path 方法时 我都会得到以下信息 console log this items https i stack imgur com RtwkN png 我有这个例子作为我的 firebase 数据库 列表文件
  • 如何在ZF2控制器中获取baseUrl?

    在我的 zf2 控制器中 我想检索应用程序基本 URL 例如http example com 我尝试了以下调用 但它返回一个空字符串 this gt request gt getBasePath 我怎样才能得到http example co
  • QNetworkManager 默认情况下是否接受压缩回复?

    我在用Q网络管理器 https doc qt io qt qnetworkaccessmanager html从服务器获取文件 但是我不知道文件在传输过程中是否使用标准 gzip 压缩进行压缩 如果不是 如何让它们下载压缩文件 我该如何去检
  • C# 中密封类的扩展方法

    我有这个sealed class public sealed class A public string AName get set 有人可以为它编写一个扩展方法 如下所示 public static class Extensions pu
  • 如果我解决了冲突,Git 的责备会改变吗?

    我试图弄清楚合并冲突是否导致了错误 但我遇到了困难 因为我不清楚冲突解决如何影响git blame 假设我在 master 中有一个文件 a b c 我在master中修改 a d c 但同事也是如此 他们在一个单独的分支中以不同的方式对其
  • 如何将输入作为 stdin 通过管道传输到 src_block ?

    考虑 org babel 中的以下 perl 片段 它使用
  • 点击时反应获取id值

    我有以下内容 var SingleEditableModule React createClass show overlay function e console log e target attr id render function v