且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何动态删除客户端验证

更新时间:2022-10-25 11:12:12

+ aProrateinstanceId + _ MaximumCharge)。rules(' add',{requiredProrataValidation:[ + aProrateinstanceId + _ MaximumCharge' MaximumCharge是必需的']});







到目前为止验证工作正常。但是有一个要求,当我从下拉列表中选择一个特定的值时,应该禁用一些验证。很少有人可以使用。



我试图实现这个目标

1 .by禁用该特定条件的输入文本框

2.by对这些文本框应用display:none

3.by删除这些文本框的data-val属性

4.by删除data-val-required属性。



但这仍然适用于此条件的验证。



所以我主要担心的是,因为我动态地应用了验证,但我需要帮助/指导来删除这个下拉更改事件的应用验证。



  if (selectedvalue == '  Flat'){

' #tdMaxCharge')。hide();

' #tdMaxCharge')。find(' input')。each( function (){

I am using asp.net mvc Client-Side Validation .
Here I am generating the html of input textboxes dynamically and also adding the validation messages and validation rules dynamically for these inout text boxes.

Html += '<td id="tdMaxCharge" ><input type="number" value="' + ProrataMaximumCharge + '" id="' + prorateinstanceId + '_MaximumCharge" class="pro-rata-val" name="' + id + '.MaximumCharge" />';
            Html += "<div><input class='ajax-auto smallTxtEntry1 ui-autocomplete-input valid pro-rata-val temp--uom'  placeholder='UOM' data-val='true' data-val-required='Please enter Maximum Charge UOM' display-name='Maximum Charge UOM' id='" + prorateinstanceId + "_MaximumChargeCurrencyName' name='" + id + ".MaximumChargeCurrencyName' type='text' value='" + ProrataCurrencyName + "' autocomplete='off' role='textbox' aria-autocomplete='list' aria-haspopup='true'/>";
            Html += "<input data-val='true' data-val-required='Please enter Maximum Charge UOM' id='" + prorateinstanceId + "_MaximumChargeCurrency' name='" + id + ".MaximumChargeCurrency' type='hidden' value=" + ProrataCurrency + " /></div></td></tr>";




Now I have added validations dynamically

$("#" + aProrateinstanceId + "_MaximumCharge").rules('add', { requiredProrataValidation: ["#" + aProrateinstanceId + "_MaximumCharge", 'MaximumCharge is required'] });




Till this point the validations are working properly.But a requirement came like,few validations should be disabled when I select a particular value from drop down and few should work.

I have tried to achieve this
1.by disabling the input text boxes for that particular condition
2.by applying display :none for those textboxes
3.by removing data-val attribute for those textboxes
4.by removing data-val-required attribute .

But still this is applying validations for this condition.

So my main concern is,as I have applied the validations dynamically,But I need help/guidance to remove these applied validations for this drop down change event.

if (selectedvalue == 'Flat') {
        $('#tdMaxCharge').hide();
        $('#tdMaxCharge').find('input').each(function(){$(this).attr('disabled','disabled') })

    }

("#" + aProrateinstanceId + "_MaximumCharge").rules('add', { requiredProrataValidation: ["#" + aProrateinstanceId + "_MaximumCharge", 'MaximumCharge is required'] });




Till this point the validations are working properly.But a requirement came like,few validations should be disabled when I select a particular value from drop down and few should work.

I have tried to achieve this
1.by disabling the input text boxes for that particular condition
2.by applying display :none for those textboxes
3.by removing data-val attribute for those textboxes
4.by removing data-val-required attribute .

But still this is applying validations for this condition.

So my main concern is,as I have applied the validations dynamically,But I need help/guidance to remove these applied validations for this drop down change event.

if (selectedvalue == 'Flat') {


('#tdMaxCharge').hide();


('#tdMaxCharge').find('input').each(function(){