簡體   English   中英

.click事件調用過兩次?

[英].click event called twice?

我不確定發生了什么問題,但是我正在chrome或Firefox中嘗試使用此代碼,並且該事件被兩次觸發兩次,有什么幫助嗎? 我得到一個空的多余“ <li> </ li>”

HTML代碼

  <div id="nav">
 <ul>
   <li>Coffee</li>
    <li>Tea</li>
    <li>Milk</li>
    <li>Bread</li>
 </ul>

  <!-- Input field -->

  <input type="submit" name="search" value="Add" id="submit" style="float:   right" />
 <div style="overflow: hidden; padding-right: .5em;">
  <input id="box" type="text" name="add" value="" style="width: 100%;" />
  </div>

</div>

jQuery代碼

<script>


  $('#submit').click(function(e){

      var add = $("#box").val();
         if(add !="")
             $("#nav ul").append("<li>"+add+"<li>");
       e.preventDefault();
       e.stopPropagation();
   });

   $('#box').keypress(function(e){
       var add = $("#box").val();
       if(e.which == 13)//Enter key pressed
       $("#nav ul").append("<li>"+add+"<li>");

    });


 </script> 

click事件未觸發兩次,問題在於您正在執行此操作

$("#nav ul").append("<li>"+add+"<li>"); 

這是兩個打開的<li>標記。 因此它被輸出為<li>entered text</li><li></li> 改為這樣做:

$("#nav ul").append("<li>"+add+"</li>"); //close the tag

看到這個小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM