2016-07-30 6 views
0

私は<input type="button" id="avvia_timer" value="AVVIA" />にIDを変更するには、このコードを使用します。jqueryでIDを変更する:なぜ機能しないのですか?

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

私はその後、私は警告して「ID」を表示したい$(this).attr("id", "inizia_timer"); でIDを変更しますが、新しい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> 
+0

を変更し、次のid新を有する素子にclickイベントを添付することができますか? – nmnsud

+0

要素が存在する前に、ロード時にイベントを「#inizia_timer」にバインドする際に委譲されたイベントハンドラを使用する必要があります。ソリューションの重複としてマークした質問を参照してください。また、 'id'属性を動的に変更することは良い考えではありません。 'id'を静的に保ち、クラスを追加/削除するべきです。 –

+0

Questionに 'html'を含めることができますか? – guest271314

答えて

0

アラートボックスに来ているものをid

$("#avvia_timer").click(function() { 
 
    $(this).val("INIZIA") 
 
    .attr("id", "inizia_timer") 
 
    .on("click", function() { 
 
     alert(this.id) 
 
    }) 
 
});
<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>

+0

未知のタイプエラー:$(...)。onは' 'on ''、function(){' – Fabio97

+0

@ Fabio97}の関数ではありません。 '.ready()'ハンドラ内の答えに? – guest271314

+0

はい@ guest271314 – Fabio97

関連する問題