我现在要在输入框加一个回车键触发事件。下面是jquery代码
keyup(function(e) {
if (e.keyCode == 13) {
var pageSize = parseInt(I.textPageSize.val());
if (pageSize >= 100) {
if (window.confirm("每页显示过多会造成浏览器缓慢,确定要继续?") == false) {
return false;
}
}
I.pageSize = pageSize;
I.callback.call();
}
});
这样在IE下面测试没有问题,点击confirm消息框的【取消】之后就能关闭弹出消息框。
但是FireFox下,可能是多线程的原因吧?点击取消会接着弹出消息框。
怎么才能不再让它触发?
keyup(function(e) {
if (e.keyCode == 13) {
var pageSize = parseInt(I.textPageSize.val());
if (pageSize >= 100) {
if (window.confirm("每页显示过多会造成浏览器缓慢,确定要继续?") == false) {
return false;
}
}
I.pageSize = pageSize;
I.callback.call();
}
});
这样在IE下面测试没有问题,点击confirm消息框的【取消】之后就能关闭弹出消息框。
但是FireFox下,可能是多线程的原因吧?点击取消会接着弹出消息框。
怎么才能不再让它触发?
return false;
我看了msdn,preventDefault()在cancelable为true的前提下。这个确实可以阻止默认动作的触发。
<input type="text" value="1" id='t' />
<script type="text/javascript">
$(document).ready(function() {
$('#t').keyup(function(e) {
if (e.keyCode == 13) {
var pageSize = parseInt($(e.target).val());
if (pageSize >= 100) {
if (window.confirm("每页显示过多会造成浏览器缓慢,确定要继续?") == false) {
return false;
}
}
alert(e.keyCode);
}
});
});
</script>
而不是鼠标操作,鼠标操作是没有问题的。。