使用jquery更改ID:为什么它不起作用?

时间:2016-07-30 18:54:38

标签: javascript jquery attributes

我使用此代码将ID更改为<input type="button" id="avvia_timer" value="AVVIA" />

$("#avvia_timer").click(function() {
    $(this).val("INIZIA");
    $(this).attr("id", "inizia_timer");
});

我用$(this).attr("id", "inizia_timer");更改了ID 然后我想展示“id&#39;有警报但是点击了具有新id的元素

$("#inizia_timer").click(function() {
    alert($(this).attr("id"));
});

这不起作用。为什么?我该如何解决?

Html代码:

<div id="timer">
    <input type="button" id="avvia_timer" value="AVVIA" />
    <input type="button" id="stop_timer" value="FERMA" />
    <span id="tempo_timer">Timer</span>
</div>

1 个答案:

答案 0 :(得分:0)

您可以在更改click

之后将id事件附加到拥有新id的元素

&#13;
&#13;
$("#avvia_timer").click(function() {
    $(this).val("INIZIA")
    .attr("id", "inizia_timer")
    .on("click", function() {
      alert(this.id)
    })
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="timer">
    <input type="button" id="avvia_timer" value="AVVIA" />
    <input type="button" id="stop_timer" value="FERMA" />
    <span id="tempo_timer">Timer</span>
</div>
&#13;
&#13;
&#13;