我有一個表單,我使用驗證。此表單有一個照片上傳部分。最初,這部分包含六個元素用下面的代碼:JQuery驗證插件:防止嵌套形式的驗證問題
<img class="photo_upload" src="image/app/photo_upload.jpg">
我已綁定的功能,爲類photo_upload
click事件。此功能以最小的形式,與此代碼替換圖像: 複製代碼
<form onsubmit="startUploadImage();" target="control_target"
enctype="multipart/form-data" method="post" action="index.php">
<input type="hidden" value="add_image" name="service">
<input type="hidden" value="1000000" name="MAX_FILE_SIZE">
<input type="file" size="10" name="photo" id="photo_file_upload"><br>
<button onclick="javascript:cancel_photo_upload();return false;">Cancel</button>
</form>
所以,本質上,單擊圖像後,我不得不嵌套在本人原創,確認形成新的形式。現在,當我使用這個新的形式和上傳圖片,我收到一個錯誤(重複三次)說:
validator is undefined
http://host.com/path/index.php
Line 286
這到底是怎麼回事?我的猜測是這
- 提交事件冒泡到外形式
- 因爲我們有形式驗證,驗證被觸發,
- 驗證試圖找到形式觸發它,
- 因爲我們沒有綁定驗證到內部表單返回'undefined'
現在,我的評估是否正確?無論是否,我該如何解決這個問題?
最後,爲了解決這個錯誤,而無需修改jquery.validate.js或你的頁面結構,應用驗證的內部形式與空規則集,這樣有望在委託對象都存在,但沒有任何規則表單上的影響應該無。 – Emyr 2016-08-02 17:30:10