2012-03-20 97 views
0

我正在修改jquery.unobtrusive-ajax.js与asp.net mvc 3打包,以允许动态加载表单工作。Jquery .on事件与选择器动态加载元素与选择器

老:

$("form[data-ajax=true]").live("submit", function (evt) { 
    /*code here */ 
}); 

我的代码:

$("body").on("submit","form[data-ajax=true]", function (evt) { 
    /*code here */ 
}); 

对于矿山,事件从来没有发射的。是否第二个参数(选择器)必须直接在body之下?我不确定为了获得相同的功能来处理动态加载的表单,究竟该做些什么。

+1

它是否适合你'生活'? – gdoron 2012-03-20 21:07:37

+0

是的,为什么不'生活'工作? – 2012-03-20 21:10:04

+0

当我使用live时,它不适用于动态加载的元素,但当我更改代码时,它根本不起作用。 – 2012-03-20 21:13:15

回答

0

也许试试这个:

$(document).on("submit","form[data-ajax=true]", function (evt) { 
/*code here */ 
}); 

我自己曾在那里的实例有时它不与“体”的工作,但与文档一样。

+0

?你有'

'在''**?!** – gdoron 2012-03-20 21:08:26

+0

在我自己的经验中,如果你只使用body,某些事件不起作用。 – 2012-03-20 21:11:41

+1

这不可能是正确的! – gdoron 2012-03-20 21:15:22