我准备好了下一个代码:
jQuery("body").delegate(".ta_obsn", "focusout", function() {
alert("Fired method");
jQuery(".tas")
.append('<textarea type="text" class="form-control" class="ta_observacion"></textarea>');
});
focusout
和blur
方法会出现此问题,但如果我替换change
而不是focusout
,则会触发该方法。
如何使用focousout
使用委托(或类似行为)?
答案 0 :(得分:1)
我们现在delegate with .on,在你的情况下
$("body").on("focusout",".ta_obsn", function() ...
答案 1 :(得分:0)
从jQuery 3.0开始,.delegate已被弃用,我们现在使用.on()代替 http://api.jquery.com/delegate/
没有弃用的'.on()'方法,似乎没什么问题
$("input").on("focusout", function() {
$("div").append('focusout invoked ! ');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
</div>
<input type="text">
<input type="text">
答案 2 :(得分:0)
你应该使用.on和最新的jQuery:
$('body').on('blur','.ta_obsn',function(){
//Your code goes here
});