如何从jquery中删除选定对象
jQuery1.9.1,我提交了一个表单,其中有一个关于按键事件的输入,如下所示如何从jquery中删除选定对象,jquery,Jquery,jQuery1.9.1,我提交了一个表单,其中有一个关于按键事件的输入,如下所示 // when user clicks post quick reply $('.quickResponse').focus(function() { var quickResponse = $(this); if (quickResponse.val() === 'post quick response') { quickResponse.va
// when user clicks post quick reply
$('.quickResponse').focus(function() {
var quickResponse = $(this);
if (quickResponse.val() === 'post quick response') {
quickResponse.val('');
}
quickResponse.keypress(function(e) {
if (e.keyCode === 13 && quickResponse.val() !== '') {
post(quickResponse.parent());
return false;
}
});
quickResponse.blur(function() {
if (quickResponse.val() === '') {
quickResponse.val('post quick response');
quickResponse.remove();
}
});
});
html就像
<form action="comment" method="post">
<input class="quickResponse" type="text" name="comment" value="post quick response"/>
<input type="hidden" name="itemId" value="${item.itemId}"/>
<input type="hidden" name="posterId" value="${item.customerId}"/>
</form>
post for只是一个通过ajax提交表单并返回json的函数,我用它更新页面
问题是,如果用户一次又一次地关注表单模糊和重新聚焦,脚本将继续存储表单的所有实例,并且当用户按return键时,所有表单对象都会多次提交。如何防止这种情况发生。问题在于,您一直在事件处理程序中绑定其他两个事件。也许这不是问题的直接原因,但这是不好的形式。只要绑一次就行了
var quickResponse = $('.quickResponse');
quickResponse.focus(function() {
if (quickResponse.val() === 'post quick response') {
quickResponse.val('');
}
}).keypress(function(e) {
if (e.keyCode === 13 && quickResponse.val() !== '') {
post(quickResponse.parent());
return false;
}
}).blur(function() {
if (quickResponse.val() === '') {
quickResponse.val('post quick response');
quickResponse.remove();
}
});
非常感谢您的支持,我想我必须回溯我的代码,并对其他一些地方进行更正,因为我已经进行了多次不必要的绑定。