【问题标题】:How to disable all inputs and textboxes after a form submitted?提交表单后如何禁用所有输入和文本框?
【发布时间】:2013-05-03 13:00:35
【问题描述】:

我有几个问题要和你讨论:

  1. 在服务器从 ajax 回答“400”后,我需要禁用表单中的所有元素。所以用户知道他只是提交了那个表单(ajax)。
  2. 我也在考虑在点击提交后将状态设置为“只读”。

这些问题背后的原因是:我有一个预订表格,用户可以为一个团体选择多个房间。所以每个房间都必须有自己的客人。说我想为我的朋友预订 3 个房间。所以我选择入住和退房。房间数 (3)。并将我朋友的详细信息放入每个表格中。在我提交第一个房间之后。数据已上传,所有字段均已禁用。然后我通过单击一个选项卡对下一个房间执行相同的操作。如下图:

其他要求:

  1. 你有一些提交后 jQuery 禁用表单元素的例子吗?
  2. 还有比这更好的同时预订多个房间的方法吗?

【问题讨论】:

  • 你试过了吗:$('form').on('submit', function() { $(this).find(':input').attr('disabled', 'disabled'); });
  • @Ronak 还没有,但会做。谢谢 :) 但我宁愿在 ajax 回答“400”之后禁用它,然后禁用元素。

标签: jquery form-submit onsubmit disabled-input


【解决方案1】:

你可以使用以下一个禁用所有输入文本区域。

jQuery 1.5 及更低版本

$("input[type=text]").attr('disabled', true);

jQuery 1.6+

$("input[type=text]").prop('disabled', true);

【讨论】:

    【解决方案2】:

    当您收到来自 ajax 调用的状态 400 时,调用以下语句。

     $('#formID input[type=text]').attr("disabled",true);
    

    这将禁用“formId”下的所有输入文本框。

    【讨论】:

    • 属性名是禁用而不是禁用。
    • @AlpeshPrajapati,谢谢。我会试试的。
    • 不用担心@AlpeshPrajapati,这可能是一个错字。
    猜你喜欢
    • 2013-05-19
    • 1970-01-01
    • 2023-03-09
    • 2011-11-04
    • 1970-01-01
    • 2011-02-14
    • 1970-01-01
    • 2018-09-15
    • 2017-01-06
    相关资源
    最近更新 更多