我试图让blur和keypress(13)对已经附加的元素做同样的事情。对于trigger()有明显的用处,对吧?不工作。我希望我只是愚蠢而且缺少明显的东西。
$(document).ready (function() {
$("#btn").click (function() {
$("#this-ul").append ("<li><input id='input1' type='text'></li><li><input type='text' id='input2'></li>");
$("#input1").focus();
});
$("#this-ul").on ("blur", "#input1", function() {
$("#input2").val ("blurred");
});
$("#this-ul").on ("keypress", "#input1", function (e) {
if (e.which == 13) {
// Want to trigger $("#this-ul").on ("blur"...) as above
}
});
});
&#13;
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<button id="btn" type="button">Click</button>
<ul id="this-ul"></ul>
&#13;
答案 0 :(得分:-1)
试试这个:
$(document).ready (function() {
$("#btn").click (function() {
$("#this-ul").append ("<li><input id='input1' type='text'></li><li><input type='text' id='input2'></li>");
$("#input1").focus();
});
$("#this-ul").on ("blur", "#input1", function() {
$("#input2").val ("blurred");
});
$("#this-ul").on ("keypress", "#input1", function (e) {
if (e.which == 13) {
$(this).trigger("blur");
}
});
});
在这里小提琴:https://jsfiddle.net/2b10cyez/
在输入1的blur
上,输入2得到“模糊”的值
在[enter] keypress上,触发模糊事件。