zoukankan      html  css  js  c++  java
  • 图片按钮提交表单

    有时候为了达到比较好的视觉效果,有人会使用图片代替按钮来提交或者重置表单数据。
    <FORM name=RedForm action=# >
    一:
    <INPUT name=textfield2>
    <INPUT type=image height=19 width=53 src="xxx.gif" align=absMiddle border=0 name=RedImg onclick="this.form.submit()">
    <INPUT type=image height=19 width=53 src="xxx.gif" align=absMiddle border=0 name=RedImg3 onclick="this.form.reset()">
    </FORM>
    二:
    代替submit按钮的图片代码格式是
    <input type="image" name="..." src="..." onClick="document.formName.submit()">
    代替reset按钮的代码图片格式是
    <a href="javascript:document.formName.reset();"><img border=0 src="..."></a>
    
    三:
    <form>
    <INPUT name=textfield2>
    <INPUT type=image height=19 width=53 src="xxx.gif" align=absMiddle border=0 name=RedImg onClick="frm1.action='link.asp'">
    
    通过onClick="document.form.submit()"来提交表单;用onClick="document.form.reset()"来复位表单,这样一来,任何一个元素(不仅是图片)都可以实现提交表单了。
    在这样子的情况下,还可以自定义图片的长度和宽度等
    
    使用图片做按钮的几种方法和优劣
    
    合理的运用图片,能够使站点更加丰富多彩,相信有许多喜欢用图片的设计师都遇到过一个问题:用图片实现表单(form)的重置(reset)按钮时,这个按钮并不能重置表单,相反却执行了提交表单的操作,本文说明了这个问题的原因,并给出了相应的解决方案。
    出现上述问题的原因主要是:普通的按钮是通过类型来区分的,submit 为提交按钮,reset 为重置按钮,而类型为图片(type="image")的按钮,其默认操作是提交表单。因此,如果想用图片实现重置按钮,就需要一些额外的设置了。
    如果想用图片代替重置按钮,可以用下面的方法:
    (1)给 type 为 image 的 input 添加 onclick 事件来实现重置,并通过添加 return false 来避免默认的提交操作:
    <form method="post" name="testForm_2" action="">
     <p><input type="text" name="keyword" /></p>
     <input type="image" src="send.gif" />
     <input type="image" src="reset.gif" onclick="javascript:document.forms['testForm_2'].reset(); return false;" />
    </form>
    document.forms['testForm_2'].reset(); 是将名称为 testForm_2 的表单重置。
    return false; 是防止提交表单。
    (2)直接用图片模拟的重置按钮
    <form method="post" name="testForm_3" action="">
     <p><input type="text" name="keyword" /></p>
     <input type="image" src="send.gif" />
     <img src="reset.gif" alt="Reset" onclick="javascript:document.forms['testForm_3'].reset();" style="cursor:pointer;" />
    </form>
    document.forms['testForm_2'].reset(); 是将名称为 testForm_2 的表单重置。
    style="cursor:pointer;" 设置图片悬停时,显示手型光标。
    两种方法大同小异,在 javascript 被禁止的情况下,第二种方法按钮不会执行任何操作,而第一种方法却会执行提交操作。
    当然,我们也可以直接把样式交给 CSS 去处理,用背景图的方式来实现,但是这样需要将 value 的值留空,如果 CSS 被禁止,那么将会显示一个没有文字的按钮,每个方法都有自己的问题,可以根据自己的需要来选择解决方案。
  • 相关阅读:
    搭建无线漫游网络及需要注意的问题
    手机如何借用笔记本网络上网
    VM下Linux网卡丢失(pcnet32 device eth0 does not seem to be ...)解决方案
    安装VMware vCenter过程设置数据库方法
    无法连接vCenter Server清单https://IP:10443
    ESXi控制台TSM:弥补vSphere Client不足
    Shell中逻辑判断
    bash 编程中循环语句用法
    Shell中IFS用法
    Shell中的${},##和%%的使用
  • 原文地址:https://www.cnblogs.com/shaoshao/p/3494419.html
Copyright © 2011-2022 走看看