Knockout - 被点击的元素

2024-01-03

我有以下标记:

<fieldset>
   <div>
       <label class="editor-label">Question 1?</label>
       <input type="text" class="editor-field" />     
       <button type="button" data-bind="click: helpClicked">Help</button>
       <p class="help">Help 3</p>
   </div>
    <div>
       <label class="editor-label">Question 2?</label>
       <input type="text" class="editor-field" />
       <button type="button" data-bind="click: helpClicked">Help</button>
       <p class="help">Help 3</p>
   </div>
   <div>
       <label class="editor-label">Question 3?</label>
       <input type="text" class="editor-field" />
        <button type="button" data-bind="click: helpClicked">Help</button>
       <p class="help">Help 3</p>
   </div>
</fieldset>

我想切换的可见性<p>与班级help在相同的Div作为单击的按钮。我试图使用 $(this) 来确定单击了哪个按钮,然后我可以从那里获得正确的“帮助”元素。

问题是$(this)不返回单击的按钮。

目前我正在尝试简单地隐藏单击的按钮,例如:

var viewModel = {
    helpClicked: function () {
        $(this).hide();           
    }
};

ko.applyBindings(viewModel);

这是行不通的。有人可以帮忙吗?


这是一个 jsFiddle ,其中有一种可能的解决方案:

http://jsfiddle.net/unklefolk/399MF/1/ http://jsfiddle.net/unklefolk/399MF/1/

您可以通过以下语法定位所需的 DOM 元素:

var viewModel = {     
    helpClicked: function (item, event) {   
        $(event.target).hide(); 
        $(event.target).next(".help").show()            
    } 
};  
ko.applyBindings(viewModel); ​
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Knockout - 被点击的元素 的相关文章

随机推荐

  • 在所有网页上保留我的页眉和页脚?

    我已经完成了网站主页的设计 现在已经开始处理其他一些页面 我希望页眉和页脚在每个页面上显示相同 我已经尝试过这种基本方法来链接构成第二个 HTML 文件中的页眉 页脚的相同样式表 已在主页中使用 我现在明白这是行不通的 服务器端脚本语言是我
  • 向后台脚本发送消息

    我正在尝试实现一个屏幕共享 Web 应用程序 该应用程序将使用desktopCapture Chrome API 在网页上显示用户屏幕 我已经创建了 chrome 扩展 并在后台运行了一个事件侦听器 我的问题是 当我尝试从网页向扩展程序发送
  • 为什么布尔字段在 Hive 中不起作用?

    我的配置单元表中有一个数据类型为布尔值的列 当我尝试从 csv 导入数据时 它存储为 NULL 这是我的示例表 CREATE tABLE if not exists Engineanalysis EngineModel String Eng
  • 绑定到嵌套属性仅显示列表中的第一项

    我正在尝试将 NET 4 5 中的 C Winforms 中的 ListBox 控件绑定到具有我希望用于 DisplayMember 的嵌套属性的对象列表 它有点有效 除了当我将 DisplayMember 设置为嵌套属性时 列表框仅显示一
  • 如何将 TForm 作为参数传递给 DLL?

    我想制作使用 tform 作为参数的 dll 简单的计划是如果将该表单传递给 dll 则 dll 文件返回包含组件名称的数组 可以将 tform 作为参数传递吗 您的进程中很可能有两个 VCL 实例 一个用于主机 exe 另一个用于 DLL
  • 插入元素后如何让 jquery 将行为附加到元素

    我有一个通过 ajax 提交的表单 并返回一个更新的 html 块 其中包含我想通过 jquery 提交的更新表单 我遇到的问题是 第一次单击 提交 时 事件被 jquery 捕获并且效果很好 当我对表单进行另一次更改而不刷新时 jquer
  • 有没有办法对所有按钮 touchUpInside 方法断点?

    有时 当您的项目包含非常不受托管的代码时 就会发生这种情况 因此您无法弄清楚如何解决一个简单的问题 在大多数情况下 调试器可以帮助我们到达根源 我只是想知道 xcode 调试器有多强大 当我使用像 OllyDbg 这样的 asm 调试器时
  • SubSonic 3.0 中的 SQL 视图

    有什么方法可以访问 SubSonic 3 0 中的 SQL 视图吗 代码生成似乎完全跳过视图 将视图包含在您的项目中 只需打开 SQLServer ttinclude 查找加载表的查询 搜索形式 const string TABLE SQL
  • 为什么Go的构造函数要返回地址?

    我知道 Go 没有任何构造函数和New func被用在它的地方 但根据这个例子 http golang org doc effective go html composite literals func NewFile fd int nam
  • 如何滚动到 UWP 中的元素

    如何滚动到滚动查看器内的特定位置
  • PyMySQL 插入 NULL 或字符串

    我尝试插入一个字段 title 与 PyMySQL 可以是NULL或字符串 但这不起作用 query INSERT INTO chapter title chapter volume VALUES s s d cur execute que
  • 如何读取 ASP.NET MVC 控制器中的 GlobalResources?

    我找不到读取控制器中资源值的方法 如果您指的是存储在 App GlobalResources 中的字符串资源 那么您可以添加 using Resources 并通过访问它们 Strings
  • 使用新的 sdk 在我的 Facebook 墙上发布

    我正在使用新的 Facebook SDK 通过以下方式在我的墙上发布他们的指示 http developers facebook com docs howtos publish to feed ios sdk 我从应用程序获得了授权 但是当
  • VB.Net 替换大型文本文件中的特定值

    我有一些大型 csv 文件 每个 1 5gb 我需要在其中替换特定值 我目前使用的方法非常慢 我相当确定应该有一种方法可以加快速度 但我只是没有足够的经验来知道我应该做什么 这是我的第一篇文章 我尝试搜索相关内容 但没有找到任何内容 任何帮
  • 在 JavaScript 中将 uint8array 转换为 double

    我有一个数组缓冲区 我想获取双精度值 例如 从 64 124 12 0 0 0 0 0 我会得到 641 5 有任何想法吗 你可以适应优秀的answer https stackoverflow com a 40970862 1447675
  • Unity 的免费版本是否带有完整的源代码?

    我正在考虑使用 Unity 的免费版本 有谁知道它是否带有完整的源代码 另外 许可证是什么样的 与扭矩引擎相比有多灵活 Unity 不附带完整源代码 您可以请求源许可证 但我相信价格是协商好的 请参阅页面底部 https store uni
  • 当 Activity onDestroy 调用时 Android onCreate 服务被调用

    我有一项启动服务的活动 如果我退出到主屏幕 然后从最近的应用程序列表中手动关闭活动 则服务中会再次调用 onCreate 因此 当 Activity 被销毁时 onCreate 会再次被调用 即使在 Activity 中调用 onDestr
  • 在 Word 中引用 Excel 单元格

    有谁知道用于直接在 Word 文档中引用 Excel 单元格的预打包解决方案 例如 TestExcel Tab1 A1 亲爱的 TestExcel Tab1 A2 先生 我们的系统已提醒我们您的帐户 TestExcel Tab1 Accou
  • 使用 simctl 运行 XCTest 包

    我有一个 XCTest 包 我可以使用它在模拟器上通过 xcode 运行simctl 我使用的是 iPhone 6 iOS 9 1 模拟器 环境变量如下 export SIMCTL CHILD TestBundleLocation User
  • Knockout - 被点击的元素

    我有以下标记 fieldset div div fieldset