禁用元素不通过表单提交



我在提交表单时禁用某些元素并启用这些元素。这样我就可以提交这些值。但是我在操作类中找不到值,但元素正在启用。

由于我使用的是jquery 1.4.4版本,因此我无法使用.prop((方法。

以下是禁用该元素的代码:

$("#"+index+'_procStepTitleAutoSuggest').attr("disabled","disabled");
$("#"+index+"_crtRowActiontxt").attr("disabled","disabled");
$("select#"+index+"_stepFunction").attr("disabled","disabled");
$("input#"+index+"_stepRTime").attr("disabled","disabled");
$("#"+index+"_donotchkBox").attr("disabled","disabled");
$("select#"+index+"_applicableAccessTime").attr("disabled","disabled");

这是提交表单时的代码(启用元素(:

    $('form').submit(function(){
$("#procedure_main_div_container").find("input,select,checkbox").attr('disabled', false);
})

请帮助我。提前谢谢。

您不能在表单中发布禁用的元素值。只是您可以将禁用更改为只读属性

取而代之的是:

$('form').submit(function(){
  $("#procedure_main_div_container").find("input,select,checkbox").attr('disabled', false);
})

试试这个:

$('form').submit(function(){
  $("#procedure_main_div_container").find("input,select,checkbox").each(function() {
    this.disabled = false;
  });
});

编辑:我看到了问题所在。 attr('disabled', false)没有做你所期望的。我的或其他答案应该有效。

您可以使用它删除所有选择器的禁用属性

$('form').submit(function(){
    $("#procedure_main_div_container").find("input,select,checkbox").removeAttr('disabled');
})

最新更新