jQuery没有'我不认识阶级的变化
jQuery doesn't recognize a class change
好的,我有一个编辑按钮,当我按下它时,它会变为"完成"按钮。
这一切都是由jQuery完成的。
$(".icon-pencil").click(function() {
var pencil = $(this);
var row = $(this).parent('td').parent('tr');
row.find('td').not(":nth-last-child(2)").not(":last-child").each(function() {
$(this).html("hi");
});
pencil.attr('class', 'icon-ok-sign');
});
// save item
$(".icon-ok-sign").click(function() {
alert("hey");
});
当我按下"编辑"(".icon-pencil
")按钮时,它的类变为.icon-ok-sign
(我可以在chrome控制台中看到),
但当我点击它时,没有显示任何警报。
当我创建一个<span class="icon-ok-sign">press</span>
并按下它时,会显示一个警报。
如何解决?
尝试使用$( document ).on( "click", ".icon-ok-sign", function() {...
因为不能为未来的元素注册点击事件,所以必须这样做:
$(document).on('click', '.icon-ok-sign', function() {
alert('hey');
});
此方法提供了一种将委托的事件处理程序附加到页面的document元素,它简化了事件处理程序的使用当内容被动态添加到页面时。
使用以下脚本:
$(document).on('click','.icon-ok-sign',function(){
alert("hey");
});
试试这个:
$(".icon-pencil").click(function() {
var pencil = $(this);
var row = $(this).parent('td').parent('tr');
row.find('td').not(":nth-last-child(2)").not(":last-child").each(function() {
$(this).html("hi");
});
pencil.removeAttr('class').addClass('icon-ok-sign');
});
// save item
$(".icon-ok-sign").click(function() {
alert("hey");
});
相关文章:
- 角度ng变化或ng点击选择can'不起作用
- 由于布尔值的变化,Django视图中的字符串格式不正确
- JavaScript:为什么不't将背景变化发送给用户's选择(简单)
- 无花果标题的不透明度正在神秘地变化
- ng变化不会'除非我输入了有效的电子邮件地址,否则我不会因为输入电子邮件而被解雇
- jQuery没有'我不认识阶级的变化
- Ng重复不随数组变化而更新
- 将鼠标悬停在图像上,图像的不透明度和图像下方标题的颜色会发生变化..同样,当标题变成两行时,它会破坏格式
- 为什么这个变化不起作用
- 范围变量以角度更新,但变化不会反映给用户
- ng变化不会't在数字输入类型上触发
- 在angular 1.4.4中,为什么作用域变量的变化不需要$watch或$apply就能传播到DOM ?
- 源代码的变化不会立即反映在他们上传到我的网站主机
- jquery检测文本框值的变化不是基于用户输入
- dom-repeat中元素的聚合物变化不反映在父数组中
- 作用域值的变化不会被指令中的$watch捕获
- css过渡背景变化不平滑
- 杰辛特不认识德维尔
- 在html模板的变化不反映
- CSS从固定到绝对的转换,顶部的变化不起作用