5

我使用 Ajax.BeginForm / Html.BeginForm 作为视图,该视图在单击提交时将对象发送到控制器。有一些 Telerik 控件有条件地被禁用。单击提交时,对象无法检索控件中已存在的值,因为它已被禁用。因此,对象是用空值制作的。有什么帮助吗?

我使用 jquery 在加载页面时禁用这些 Telerik 控件。

Change.setDropDownValues = function () {

    if (condition) {

                 $("#A").data('tDropDownList').enabled = false;                            $("#A").data('tDropDownList').disable();
                    }
        }
        else if (condition) {

            $('#Pop').attr('disabled', 'disabled'); //text box
            $('#ShortDesc').attr('disabled', 'disabled'); //textarea
            $('#LongDesc').attr('disabled', 'disabled'); //text area
            $('#Cont').attr('disabled', 'disabled'); //text box

            $('#iDate').attr('disabled', 'disabled'); //datepicker division
            $('#C').data('tDropDownList').enabled = false; //drop down list
            $('#C').data('tDropDownList').disable();  
        }
};

谁能说如何重新修改以便我可以获取禁用的字段值?

4

2 回答 2

14

这就是disabled输入的工作方式。他们从不将值发送到服务器。readonly如果您想阻止用户修改值并在提交表单时将旧值发送到服务器,则可以改用。

于 2013-01-21T09:58:12.300 回答
3

你可以使用这样的东西

$(":disabled", $('#yourform')).removeAttr("disabled");

在提交之前。

于 2016-04-15T07:39:04.417 回答