Jquery事件委派不工作
我正在尝试根据在相应的弹出窗口上单击/输入的值更新我的div值 我有一条信息,上面写着“我单身,没有孩子”,点击单身,弹出一个带有选项(单身/已婚)的弹出框。如果用户点击已婚,那么我是应该被替换为我们已婚没有孩子的作品 当我试图再添加一行时,用户在弹出框中输入年龄并单击OK,标签中的文本应该被更新。这是。我试过这个机智的活动。。它不起作用Jquery事件委派不工作,jquery,html,twitter-bootstrap,Jquery,Html,Twitter Bootstrap,我正在尝试根据在相应的弹出窗口上单击/输入的值更新我的div值 我有一条信息,上面写着“我单身,没有孩子”,点击单身,弹出一个带有选项(单身/已婚)的弹出框。如果用户点击已婚,那么我是应该被替换为我们已婚没有孩子的作品 当我试图再添加一行时,用户在弹出框中输入年龄并单击OK,标签中的文本应该被更新。这是。我试过这个机智的活动。。它不起作用 @Pete--我尝试使用数据btn自定义属性,因为我将重新使用“.popover内容按钮”。我修改了文件,但似乎不起作用。有什么见解吗 HTML 因此,我将您
@Pete--我尝试使用数据btn自定义属性,因为我将重新使用“.popover内容按钮”。我修改了文件,但似乎不起作用。有什么见解吗 HTML
因此,我将您的
.popover标记按钮
更改为.popover内容按钮
,因为我无法在您的按钮上看到该类。我想这就是为什么你的事件没有被触发,因为你的点击函数的类是错误的
$('body').on("click", ".popover-markup li, .popover-content button", function() {
我必须对你获得价值的方式做一些改变
case 'button':
var age = $(this).parent().find('input').val();
$(this).closest('.popover').prev('div').find('.popover-markup a').text(age);
$('.trigger').popover('hide'); // If you want to hide the popover when clicking okay.
break;
小提琴示例
@Trevor是正确的,因为您的选择器不正确。
.popover
函数将popover附加到body
元素(有一个容器
参数,该参数应允许您重写该参数,)
由于popover附加到正文中,因此它不是.popover markup
的后代。将选择器更改为.popover content li
和.popover content button
可以很好地找到它们,并进行委派
处理程序中还有一些其他问题(当您没有定义事件时,首先调用event.target
),但这些问题很容易得到纠正
工作演示:我尝试使用数据btn自定义属性,因为我将重新使用“.popover内容按钮”。我修改了小提琴似乎不起作用。任何细节??您可以使用自定义属性,但需要先定义它。您只需将数据btn=“我的年龄”
添加到按钮标记或添加$('.popover content button')。数据('btn','my age')代码>在$('.popover markup>.trigger')
的单击处理程序中(我建议使用标记)。请参阅更新的小提琴:
$('body').on("click", ".popover-markup li, .popover-content button", function() {
case 'button':
var age = $(this).parent().find('input').val();
$(this).closest('.popover').prev('div').find('.popover-markup a').text(age);
$('.trigger').popover('hide'); // If you want to hide the popover when clicking okay.
break;