javascript - 在表单提交之前从 html 表单元素中删除了 "disabled & ready only"属性

标签 javascript jquery disabled-input

我有一个表单,其中有一堆字段已设置为只读并使用 jquery 禁用,如下所示:

$('.adminOnlyField').prop('disabled', 'disabled');
$('.adminOnlyField').attr("readonly","true");

我同时使用这两者,因此选择字段对于查看者来说也是只读的。

我想在提交表单之前从表单中删除这些属性,以便其他非禁用字段将进入我的模型。我已经尝试过,但似乎不起作用:

$('.clear_ready_only').click(function(e) 
{
   e.preventDefault();
   $('.adminOnlyField').removeAttr('disabled');
   $('.adminOnlyField').removeAttr('readonly');
   $('#CardModifysaleForm').submit();
});

我错过了什么吗?我以为这样就可以完成任务了?

谢谢

//以下更改后的完整 JS 功能

$(function () {

    var $adminOnly = $('.adminOnlyField');
    $adminOnly.prop('disabled',true).prop('readonly',true);
    $adminOnly.attr("onclick","return false");
    $adminOnly.attr("onkeydown","return false");
    $adminOnly.removeClass('required');
    $adminOnly.removeClass('date_picker');



    $('.clear_ready_only').click(function(e) 
    {
        e.preventDefault();
        $adminOnly.prop('disabled',false).prop('readonly',false);
        $adminOnly.attr("onclick","return true");
        $adminOnly.attr("onkeydown","return true");
        $('#CardModifysaleForm').submit();
    });

});

最佳答案

首先,您可以使用.prop()对于两者来说,这比 .attr() 更快:

$('.adminOnlyField').prop('disabled',true);
$('.adminOnlyField').prop('readonly',true);

其次,为了提高效率,您应该缓存和链接:

var $adminOnly = $('.adminOnlyField');
$adminOnly.prop('disabled',true).prop('readonly',true);

第三,要回答您的问题,只需打开提交开关即可:

$('.clear_ready_only').click(function(e){
    e.preventDefault();
    $adminOnly.prop('disabled',false).prop('readonly',false);
    $('#CardModifysaleForm').submit();
});

关于javascript - 在表单提交之前从 html 表单元素中删除了 "disabled & ready only"属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18666929/

相关文章:

javascript - 在 HTML5/js/PHP/CSS 中是否有一种标准的编程方式来创建可重用的对象?

javascript - 奇怪的 jQuery XML 问题

javascript - 如何将 jquery selectable 限制为 1 tr 并将所选元素传递到另一个页面

javascript - TypeError:使用 OOUI/Windows/消息对话框时,OO.ui.MessageDialog 不是构造函数

java - 禁用预先选中的复选框警报对话框 android java

c# - 如何将此 asp.net 列表转换为 html 列表?

javascript - 突出显示菜单项及其子菜单项

javascript - 如何限制定期向其中添加消息的 DIV 中的文本量?

html - 单击不是提交按钮后如何禁用html按钮