我的具體問題與實施Cedric Dugas的jQuery驗證插件(http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/#comments)的v1.7有關,但我相信這個問題很容易推廣到其他情況。爲什麼我無法在getScript回調中初始化jQuery函數?
通常予加載以下腳本像這樣:
<script src="inc/formValidator/js/jquery.validationEngine.js" type="text/javascript"></script>
然後初始化插件,i執行以下操作:
<script>
$(document).ready(function() {
$("#myFormID").validationEngine();
});
</script>
我有與的id屬性值的一個形式「myFormID」和腳本驗證表單域。這工作。但是,如果我在每個頁面上包含兩位代碼,但頁面沒有ID爲myFormID的表單,則會出現空錯誤。爲了嘗試解決這個問題,使插件負荷只有當以適當的形式存在,我想這一點:
<script>
if($('#myFormID').length)
{
$.getScript('inc/formValidator/js/jquery.validationEngine.js', function() {
alert('Load was performed.');
});
};
</script>
這太正常工作。但是,現在我無法弄清楚如何初始化validationEngine並將其綁定到表單。爲什麼這不起作用?
$.getScript('inc/formValidator/js/jquery.validationEngine.js', function()
{
$("#myFormID").validationEngine();
});
我也試過這樣:
$.getScript('inc/formValidator/js/jquery.validationEngine.js', function()
{
$("#myFormID").load(function()
{
$(this).validationEngine();
});
});
沒有運氣。我得到這個錯誤:$(「#myFormID」)爲空。
想法?我幾乎已經禿頂了。這沒有幫助!
原來這是來自另一個開發人員添加的腳本的原型衝突。 – technoTarek 2011-01-27 21:03:52