使用jquery将提交按钮替换为图像按钮

使用jquery将提交按钮替换为图像按钮,jquery,html,Jquery,Html,如何使用jquery将表单提交按钮替换为图像提交按钮 我之所以需要使用jquery,是因为我正在使用一个插件来生成联系人表单,而jquery似乎是替换它而不必进入插件代码的最有效的方法。按钮是否有一个类或id,可以用来将它与某个css绑定?在以下情况下,您可能不需要使用jQuery: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"

如何使用jquery将表单提交按钮替换为图像提交按钮


我之所以需要使用jquery,是因为我正在使用一个插件来生成联系人表单,而jquery似乎是替换它而不必进入插件代码的最有效的方法。

按钮是否有一个类或id,可以用来将它与某个css绑定?在以下情况下,您可能不需要使用jQuery:

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>
    <style>
      .form-submit { text-indent:-9999em; border:0; width:[WIDTH OF IMAGE]; height:[HEIGHT OF IMAGE]; background:#fff url([URL TO IMAGE]) no-repeat 0 0 ; line-height:0 font-size:0; }
    </style>
  </head>

  <body>

    <form>
      [...]
      <input type="submit" class="form-submit"/>
    </form>

  </body>
</html>

无标题文件
.form submit{text indent:-9999em;边框:0;宽度:[图像宽度];高度:[图像高度];背景:#fff url([url TO IMAGE])不重复0;行高:0字体大小:0;}
[...]

您可以使用几行javascript来完成

var element = document.getElementById('btn'); //assuming the button has an ID of btn

element.setAttribute('type','image');
element.setAttribute('src','path-to-image.ext');
但是,对于IE,您需要替换元素,因为IE不允许动态更改类型。。所以

var oldO = document.getElementById('btn');

var newO=document.createElement('input');
newO.type='image';
newO.name = oldO.name;
// any other attributes you want to copy over..
newO.src='path-to-image.ext';
oldO.parentNode.replaceChild(newO,oldO);

如果在jQuery中执行此操作,并且表单是动态生成的,则可以应用这些

var submit = $('form').find('input[type=submit]');
submit.hide();
submit.after('<input type=image src=test.jpg />');

我看不出来,它指定它只是一个“输入”。这太糟糕了,这是最简单的!如果您不担心ie6,您可以使用一个类似于rob发布的“input[type=submit]{[…]}”的属性选择器,但纯粹是css。但真的,谁能忽视ie6呢?唉,谢谢你,我会试试的,然后回来报到!
var submit = $('form').find('input[type=submit]');
submit.addClass('form-submit');