我只是試圖打印一個錯誤消息,如果有人留下文字字段空白使用jquery.But它沒有被顯示。 這是html代碼:jquery表單驗證
<form id="form1" runat="server">
<div>
<table>
<tr>
<td>
<label>Name</label></td>
<td> <input class="required" type="text" name="name" id="name" /><span>(required)</span></td>
</tr><tr>
<td><br/><label>Address</label></td>
<td><input class="required" type="text" name="address" id="address"/><span>(required)</span></td></tr>
</table>
</div>
</form>
這是jquery的代碼。
$(document).ready(function() {
var requiredFlag = ' * ';
$('form :input').filter('.required').next('span').text(requiredFlag).end();
if ($(this).is('.required')) {
if (this.value == '') {
var errorMessage = 'This is a required field';
};
$('span></span').text(errorMessage).appendTo($(this));
};
});
可能是我缺少的東西。 幫助專家。 謝謝。
我不明白你的jQuery代碼,您應該爲每個輸入元素的循環,然後使用這個目的。您正在使用$(this)不正確 – Skatox 2012-08-17 13:04:25
爲什麼您不想在提交後驗證表單?你也可以使用jQuery驗證插件 - http://docs.jquery.com/Plugins/Validation#Example。附:以及什麼是「跨度」 span「?看起來有很多錯誤。嘗試從下面的鏈接重現示例。 – LLAlive 2012-08-17 13:07:29
你認爲在js「this」中究竟是什麼?這包含了上下文,但是因爲您沒有迭代任何集合,或者使用另一個函數/類來調用它,所以這是基本上下文 - windows(或document?)對象 – alonisser 2012-08-17 13:07:31