jsp 关键代码如下:
function CheckSubmit(){
//验证实例名称
var sname=$('#name').val().trim();
if(sname=='')
{
alert("实例名称为必填项!");
return false;
}
}
---------------------------------------------------------------------------------
<form method="post" action="/create/save" onsubmit="return CheckSubmit();" id="formupdate">
<table style="width: 100% ;height:80px">
<tr>
<td width="70">实例名称:</td>
<td width="235">
<input type="text" id="name" name="name" tabindex="1" /></td>
</tr>
</table>
<input type="submit" value="提交" id="SubmitButton" />
</form>
在火狐及google浏览器中运行时,都能执行 form 表单的验证功能。 但是在IE9 浏览器下,就跳过了这个验证。求解!
你的 trim 函数写错了吧
var sname = $.trim($('#name').val());
谢谢你的热情回复,问题正是出在这儿。
是不是考虑用IE9的“兼容性视图”运行一下。
还是存在这个问题
@izhangxu: 用IE的开发人员工具调试下页面,看看生成的页面的代码是什么。
@Launcher:
这位大哥,问题解决了,<input type="button" value="提交" id="SubmitButton" click="javascript:if(CheckSubmit()){$('#formupdate').submit();}"/>方式验证都通过后,不能提交,还是采用以前的这个方式:
<input type="submit" value="提交" tabindex="13" id="SubmitButton" class="SubmitButton" />
问题的真正原因是:在我的验证方法中以下这种写法,在IE9中识别不了
var sname = $('#name').val().trim();
应该改为“二楼”同志那种写法
var sname= $.trim($('#name').val());
这种,IE9就能识别了。
其实 IE9 提交时,是执行了验证方法的,只是我那种写法,IE9 默认都通过了,火狐和google能识别。
改成 var sname= $.trim($('#name').val()); 这种,这三个浏览器都可以在提交时执行验证了。
感谢你的热情帮助。
<input type="button" value="提交" id="SubmitButton" click="javascript:if(CheckSubmit()){$('#formupdate').submit();}"/>
这种方式,在IE 9下点击这个button 还是没有任何反映,但是与之前有一点区别,之前是:点击button就直接提交了。现在点击,没有任何提示,也没有提交数据。我试图加上提示语句,写成了如下:
<input type="button" value="提交" id="SubmitButton" click="javascript:if(CheckSubmit()){$('#formupdate').submit();}else{alert('数据未完善!')}"/> ,但是仍未执行 else里面的内容。
这位大哥,问题解决了,<input type="button" value="提交" id="SubmitButton" click="javascript:if(CheckSubmit()){$('#formupdate').submit();}"/>方式验证都通过后,不能提交,还是采用以前的这个方式:
<input type="submit" value="提交" tabindex="13" id="SubmitButton" class="SubmitButton" />
问题的真正原因是:在我的验证方法中以下这种写法,在IE9中识别不了
var sname = $('#name').val().trim();
应该改为“二楼”同志那种写法
var sname= $.trim($('#name').val());
这种,IE9就能识别了。
其实 IE9 提交时,是执行了验证方法的,只是我那种写法,IE9 默认都通过了,火狐和google能识别。
改成 var sname= $.trim($('#name').val()); 这种,这三个浏览器都可以在提交时执行验证了。
感谢你的热情帮助。
function CheckSubmit(){
//验证实例名称
var sname=$('#name').val().trim();
if(sname=='')
{
alert("实例名称为必填项!");
return false;
}
return true;
}