javascript - 如何在单击按钮时更改 onclick 函数值

标签 javascript jquery html

我尝试寻找这个问题的答案,但似乎找不到具体的答案。

我的网站有一个按钮,如下所示:

<input class="btn btn-success" onclick="w.start()" type="button" value="Start" id='start' />

点击后我希望它更改为“Stop”,并且我希望 onclick 函数更改为 onclick="w.stop()" 而不是 w.start() 我希望该类从 btn-success 更改为 btn-danger ( Bootstrap )

可以使用此 jQuery 更改名称:

$(function () {
    $('#start').click(function () {
        $(this).val() == "Start" ? play_int() : play_pause();
    });
});

function play_int() {
    $('#start').val("Stop");
    // do start
}

function play_pause() {
    $('#start').val("Start");
    // do stop
}

但是如何更改 onclick 函数和类呢?

特别是 onclick 函数:)

最佳答案

您获得了很多有关如何以不同方式处理问题的好建议,但没有回答您有关如何更改 onclick 的具体问题。这在许多情况下都是一种有用的能力 - 因此,即使您听取了其他人关于一般方法的建议,我也想回答您的具体问题。

这是我测试过并发现有效的代码:

<script>
function play_int() {
    alert("play_int was executed");
    $("#start").val("Stop");
    $("#start").attr("onclick", "play_pause()");
    // do start
}

function play_pause() {
    alert("play_pause was executed");
    $("#start").val("Start");
    $("#start").attr("onclick", "play_int()");
    // do stop
}
</script>

<input class="btn btn-success" onclick="play_int();" type="button" value="Start" id='start' />

关于javascript - 如何在单击按钮时更改 onclick 函数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18019645/

相关文章:

javascript - 正则表达式:匹配,但不包括匹配的部分

javascript - 已内存组件的子组件是否也已内存?

javascript - 标签过滤器列表

jquery - 在 jquery 中创建一个随机边框

javascript - 刷新页面后,jqm 面板停止打开(已编辑)

jquery - 将 jquery 变量分配给输入

javascript - 为什么 JS 函数在我从 JSFiddle 中取出时不起作用?

javascript - 后台 Javascript 或 Cordova 应用程序中的计时器任务梯级

javascript - 在输入类型文本中将小数点右对齐

javascript - CSS 文本阴影性能问题。