最近在写程序中,碰到了一个小问题,就是在需要进行form表单提交的同时也要验证数据的合法性!
第一次尝试:(失败)
做法:<form action="某个提交数据的URL地址" id="form1" name="form1" οnsubmit="return IsSubmit();">
........\\这里是表单内容
<!--下面是一个img图片,然后加上了一个onclick事件-->
<img οnclick="IsSumbit();" src="../images/btnsent.gif" width="149" height="38" border="0" style="cursor:pointer;"/>
</form>
<script type="text/javascript">
function IsSubmit()
{
//这里进行对表单数据合法性的验证,
if("不合法")
return false;
......
return true;//如果表单所有验证通过就会返回true
}
当img的onclick事件触发后,根本不会执行JS的IsSubmit()函数.但当把img标签换成input标签时就可以了执行IsSubmit()函数.
第二次尝试:(成功)
做法:<form id="form1" name="form1" >
........\\这里是表单内容
<!--下面是一个img图片,然后加上了一个onclick事件-->
<img οnclick="IsSumbit();" src="../images/btnsent.gif" width="149" height="38" border="0" style="cursor:pointer;"/>
</form>
<script type="text/javascript">
function IsSubmit()
{
if(ValidateunForm())
{
document.forms[0].action="某个提交数据的URL地址";
document.forms[0].submit();
}
}
function ValidateunForm()
{
//这里进行对表单数据合法性的验证,
if("不合法")
return false;
......
return true;//如果表单所有验证通过就会返回true
}
上面的应用就是成功的!