我写了一个简单的函数:
function inputChanged()
{
$('input').change(function(){
$(this).addClass('changed');
});
}
我正在向div添加动态表单,并希望将函数绑定到添加的表单,我试过这样:
// add a new form on click
$('.addForm').live({
click: function(e) {
e.preventDefault();
$("<div>").load("directory/theform.html", function() {
$("#theForms").prepend($(this).html());
// i am calling the function here...
$("#theForms form:last").validate().inputChange();
});
}
});
这对我不起作用...如何将此函数绑定到动态加载的表单?
答案 0 :(得分:2)
您可以像这样创建自定义jQuery函数:
jQuery.fn.inputChange = function() {
$(this).change(function(){
$(this).addClass("changed");
});
return this;
}
然后你可以像这样使用它:
$("#theForms form:last").inputChange();
答案 1 :(得分:1)
将您的第一个功能更改为:
function inputChanged()
{
$('input').live('change', function(){
$(this).addClass('changed');
});
}
或者更好的是,使用jQuery 1.7的新on()
方法insteda。
答案 2 :(得分:0)
$(".addForm").live("click",function(e){
});
答案 3 :(得分:0)
你有哪个版本的jquery?
您使用1.4.3中添加的事件映射。见http://api.jquery.com/live/