当前位置: 首页 > 面试题库 >

jQuery的禁用形式提交输入

皇甫智明
2023-03-14
问题内容

我的页面中似乎没有以下javascript,但无法正常运行。

$('form').bind("keypress", function(e) {
  if (e.keyCode == 13) {               
    e.preventDefault();
    return false;
  }
});

我想在输入时禁用提交表单,或者更好的是,将其称为ajax表单提交。两种解决方案都可以接受,但是我上面包含的代码不会阻止表单的提交。


问题答案:

如果keyCode未捕获,请捕获which

$('#formid').on('keyup keypress', function(e) {
  var keyCode = e.keyCode || e.which;
  if (keyCode === 13) { 
    e.preventDefault();
    return false;
  }
});

编辑:错过了,最好使用keyup而不是keypress

编辑2:正如在某些较新版本的Firefox中一样,不阻止表单提交,因此将keypress事件添加到表单也更安全。通过将事件仅绑定到“名称”表单,而仅绑定到表单ID,也行不通(了吗?)。因此,我通过适当地更改代码示例使这一点更加明显。

编辑3:更改bind()on()



 类似资料:
  • 我的页面中有以下javascript,它似乎不起作用。 我想在回车时禁用提交表单,或者更好的是,调用我的ajax表单提交。这两种解决方案都是可以接受的,但是我上面包含的代码不会阻止表单提交。

  • 问题内容: 我有这个HTML: 我该如何做这样的事情: 当文本字段为空时,应禁用提交(disabled =“ disabled”)。 在文本字段中键入内容以删除禁用的属性时。 如果文本字段再次变为空(删除了文本),则应再次禁用提交按钮。 我尝试过这样的事情: …但这不起作用。有任何想法吗? 问题答案: 问题在于,仅当焦点从输入移开(例如,有人单击输入或将选项卡移出输入)时,更改事件才会触发。尝试改

  • 我已经试图从这里跟随其他答案的例子,但我没有成功! 我创建了一个反应式表单(即动态表单),并希望在任何给定时间禁用某些字段。我的表格代码: 我的html: 我减少了代码以方便使用。我想禁用select类型的字段。我试着做到以下几点: 不行!有人有什么建议吗?

  • 问题内容: $input.disabled = true; 要么 哪种标准方法?相反,如何启用禁用的输入? 问题答案: jQuery 1.6以上 要更改属性,您应该使用函数。 jQuery 1.5及以下 该函数不存在,但具有相似的功能: 设置禁用的属性。 要再次启用,正确的方法是使用 在任何版本的jQuery中 您始终可以依赖实际的DOM对象,并且如果只处理一个元素,它可能比其他两个选项要快一些:

  • 问题内容: 单击后,我编写了以下代码以禁用网站上的提交按钮: 不幸的是,它没有发送表格。我怎样才能解决这个问题? 编辑 我想绑定提交,而不是表格:) 问题答案: 做到: 发生的事情是您实际上在完全触发该提交事件之前禁用了该按钮。 您可能还应该考虑使用ID或CLASS来命名元素,因此不要在页面上选择所有提交类型的输入。 (请注意,我使用,因此该表单在示例中并未实际提交;请在使用时将其保留。)

  • 问题内容: 我在表单中有两个 提交 按钮。我如何确定哪一个被击中服务器端? 问题答案: 如果给每个人起一个名字,那么被点击的人将作为其他任何输入被发送出去。