today when i write the system logon code,i write the code like :
<input type="image" tabindex="4" name="imageField" id="imageField"
src="<%=baseURL %>/css/style/HCS_Style/image/HCS_Style/login2_04.gif" onclick="javascript:login();" />;
so the confusing thing come,when i click the image the form is automatically submit;
so the above code submit the form twice.
i check the html conference, i find a sentence like this:
"INPUT type=image 创建一个图像控件,该控件单击后将导致表单立即被提交。"
that is to say:Creates an image control that, when clicked, causes the form to be immediately submitted.
so you can write the logon code like below formats:
1.<img tabindex="4" name="imageField" id="imageField" src="<%=baseURL %>/css/style/HCS_Style/image/HCS_Style/login2_04.gif" style="cursor:hand" onclick="javascript:login()">
2.<input type="image" tabindex="4" name="imageField" id="imageField"
src="<%=baseURL %>/css/style/HCS_Style/image/HCS_Style/login2_04.gif" />;
when you write the code like the second fomat,you must set the action to the form before the image is clicked.
本文探讨了使用HTML中的input type=image元素作为登录按钮时可能导致的表单双重提交问题,并提供了两种解决方案:一是使用img标签替代,二是仅使用input type=image并确保在点击前设置表单操作。
1万+

被折叠的 条评论
为什么被折叠?



