亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

不使用動態注入元素

不使用動態注入元素

慕少森 2019-07-27 14:15:54
不使用動態注入元素我在和你一起工作ASP.Net MVC3,使用客戶端驗證的更容易的方法是啟用jquery.validate.unobtrusive..一切都很好,就像服務器上的東西一樣。但是當我嘗試用javascript注入一些新的“輸入”時,我知道我需要調用$.validator.unobtrusive.parse()重新約束驗證。但是,所有這些動態注入的磁場都沒有發揮作用。更糟糕的是,我嘗試使用jquery.validate它也不起作用。有什么想法嗎?
查看完整描述

3 回答

?
拉風的咖菲貓

TA貢獻1995條經驗 獲得超2個贊

我嘗試了Xhalent的方法,但不幸的是,它并不適合我。羅賓的方法成功了,但沒有奏效。它對動態添加的元素非常有用,但是如果您嘗試使用JQuery刪除所有驗證屬性并從DOM中跨越,驗證庫仍然會嘗試驗證它們。

但是,如果除了“validationData”之外,還刪除了表單的“unobtrusiveValId”數據,那么它對于動態添加和刪除要驗證或不驗證的元素非常有吸引力。

$("form").removeData("validator");
$("form").removeData("unobtrusiveValidation");
$.validator.unobtrusive.parse("form");




查看完整回答
反對 回復 2019-07-28
?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

我也有同樣的問題。我發現不可能在同一表單上兩次調用$.valdator.unobtrusive.parse()。當最初從服務器加載表單時,表單將由非突出庫自動解析。當您向表單動態添加一個輸入元素并再次調用$.valdator.unobtrusive.parse()時,它將無法工作。parseElement()也是如此。

不顯眼的庫調用jQuery驗證插件的驗證方法來設置所有規則和消息。問題是,當再次調用時,插件不會更新其給定的新規則集。

我找到了一個粗略的解決方案:在調用unobStrusivelib上的解析方法之前,我丟棄了表單驗證器:

$('yourForm').removeData("validator");

現在,當驗證方法被非突出庫調用時,將重新創建所有規則和消息,包括動態添加的輸入。

希望這能幫上忙



查看完整回答
反對 回復 2019-07-28
  • 3 回答
  • 0 關注
  • 314 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號