Jquery不会从jquery生成的控件触发 [英] Jquery is not firing from controls generated from jquery
问题描述
我有一个jQuery函数,可以在点击一些添加按钮时生成输入文本。
生成的代码如下:
< input type =textid =txtNumname =some model bindingclass =FireEvent/>
有一个jquery函数:
$(。FireEvent)。更改(
alert(called);
);
所有这些代码都在.Ready()函数仍然在文本更改时此事件未被触发。
i还试过$(。FireEvent)。bind(input,function(){});这也是行不通的。
但是如果我尝试从我视图中的控件中触发此事件,那么它的工作非常完美。
ie
@ Html.TextBox(name,,new {@class =FireEvent,@ id =someId});
或
< input type =textid =someIdname =some bindingclass =FireEvent/>
(。FireEvent)。更改(
alert(called);
);
所有这些代码都在.Ready()函数仍然在文本更改时此事件未被触发。
i也试过
( FireEvent。 )结合( 输入,函数(){})。这也是行不通的。
但是如果我尝试从我视图中的控件中触发此事件,那么它的工作非常完美。
ie
@ Html.TextBox(name,,new {@class =FireEvent,@ id =someId});
或
< input type =textid =someIdname =some bindingclass =FireEvent/>
在创建事件时将事件附加到新元素,或使用将事件绑定到选择器的on方法
http://api.jquery.com/on/ [ ^ ]
on适用于首次运行代码后创建的元素,但请注意它有性能损失。
I have a jQuery function that generates input text on click of some add button.
generated code looks like:
<input type="text" id="txtNum" name="some model binding" class="FireEvent" />
there is a jquery function:
$(".FireEvent").change(
alert("called");
);
all this code is in .Ready() function still on text change this event is not triggered.
i have also tried $(".FireEvent").bind("input",function(){}); this is also not working.
However if i try to fire this event from controls that are in my view it works perfect.
i.e.
@Html.TextBox("name", "", new { @class = "FireEvent", @id = "someId" });
Or
<input type="text" id="someId" name="some binding" class="FireEvent" />
(".FireEvent").change(
alert("called");
);
all this code is in .Ready() function still on text change this event is not triggered.
i have also tried
(".FireEvent").bind("input",function(){}); this is also not working.
However if i try to fire this event from controls that are in my view it works perfect.
i.e.
@Html.TextBox("name", "", new { @class = "FireEvent", @id = "someId" });
Or
<input type="text" id="someId" name="some binding" class="FireEvent" />
Either attach your events to the new elements when you create them, or use the "on" method of binding an event to a selector
http://api.jquery.com/on/[^]
"on" works for elements created after the code is first run, but note it has a performance penalty.
这篇关于Jquery不会从jquery生成的控件触发的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!