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

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

不使用動態注入元素

不使用動態注入元素

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

3 回答

?
jeck貓

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

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

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

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


查看完整回答
反對 回復 2019-07-17
?
慕姐4208626

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

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

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

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

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

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

希望這能幫上忙


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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