javascript - Jquery 不会从按钮更改背景图像

标签 javascript jquery html css xhtml

我想在创建按钮时创建一个包含一些不同内容的 html 页面,但我被困在一种方法中。

我是 jQuery 的新手,我想在按下按钮后显示不同的背景图像。 我想将第二个“输入”的背景图像更改为第一个“输入”的背景图像,其中,在 css 中:

.btn17{
    background-image: url('../Imagenes/trashc1.png');

}

.btn18{
    background-image: url('../Imagenes/trashc2.png');

}

<h:head>
   <title>Facelet Title</title>
    <link type="text/css" rel="stylesheet" href="CSS/Boton.css" />
    <script type="text/javascript" src="Javascript/jquery-1.9.1"/>
    <script type="text/javascript" src="Javascript/jquery-ui-1.10.3.custom"/>
    <script type="text/javascript">
        $('input:submit').on('click', function() {
            $(this).toggleClass('btn18 .btn17');
        });
    </script>
</h:head>
<h:body>
    <form>
        <input class="btn17" type="submit"  value=" "/>
    </form>
    <form>
        <input class="btn18" type="submit"  value=" "/>
    </form>
</h:body>

我研究了一些解决问题的方法,但是我太缺乏经验了。

最佳答案

两个问题

  1. 因为这些是提交按钮,所以如果不阻止默认操作,页面将会刷新
  2. 由于脚本位于 header 中,因此您需要将其包装在 dom 就绪处理程序中,否则在执行脚本时它将无法找到目标元素以附加事件处理程序

尝试

jQuery(function () {
    $('input:submit').on('click', function (e) {
        $(this).toggleClass('btn18 btn17');
        e.preventDefault()
    });
})

演示:Fiddle

关于javascript - Jquery 不会从按钮更改背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19827812/

相关文章:

javascript - 如何使用 jQuery 或 java 脚本设置浏览器窗口首次加载时的高度

javascript - 在幻灯片放映中添加一张幻灯片以在间隔之间停留更长时间

javascript - 使用 jQuery 编辑 iframe src

jquery - 使用 jQuery 上传和裁剪个人资料图片

javascript - 将变量传递给 getElementById

html - 使用 Bootstrap 覆盖两个图像

javascript - d3 动画导致行为缓慢

javascript - 使用 JavaScript 跳转到一个新的 HTML 页面

Safari Mobile (iPad) 上的 Javascript 堆栈检查

jquery - Jquery更改方法的问题