2015-08-26 31 views
0

我想多次使用點擊事件。我嘗試過「生活」,但它沒有做任何事情。我有兩個其他腳本,看起來像我在這裏分享的一樣。另外,它是一個Django項目。如果有另一個好方法來開展這個項目,請寫。注意:不是Urls.py編輯。JS「點擊」事件僅適用於一次

這裏是我的JS代碼:

<script> 
text = "<div class=" + "'row'>" + 
    "<div class=" + "'isotope-gallery-container'>" + 
"{% for project in project_filter_category %}" + 
"{% if project.is_completed %}" + 
"<div class=" + "'col-md-3 col-sm-6 col-xs-12 gallery-item-wrapper artwork creative'>" + 
    "<div class=" + "'gallery-item'>" + 
     "<div class=" + "'gallery-thumb'>" + 
      "<img src=" + "'{{ project.cover_photo.url }}'" + "class=" + "'img-responsive'> " + 
      "<div class=" + "'image-overlay'>" + "</div>" + 
      "<a href=" + "'{{ project.cover_photo.url }}'" + "class=" + "'gallery-zoom'>" + "<i class=" + "'fa fa-eye'>" + "</i>" + "</a>" + 
      "<a href=" + "'{{ project.id }}'" + "class=" + "'gallery-link'" + "target=" + "'_blank'>" + "<i class=" + "'fa fa-link'>" + "</i></a>" + 
     "</div>" + 
     "<div class=" + "'gallery-details'>" + 
      "<h5>Tamamlanmış</h5>" + 
     "</div>" + 
    "</div>" + 
"</div>" + 
"{% endif %}" + 
"{% endfor %}" + 
"</div>" + 
"</div>" 
$(document).ready(function(){ 
    $("#btn-done").on("click", function(e){ 
    e.preventDefault(); 
    $("#change").replaceWith(text); 
}); 
}); 
</script> 

這裏是我的HTML代碼:

<ul class="filter"> 
     <li class="active"> 
      <a id="btn-all" href="">Hepsi</a> 
     </li> 
     <li> 
      <a id="btn-done" href="">Tamamlanmış</a> 
     </li> 
     <li> 
      <a id="btn-on" href="">Devam Eden</a> 
     </li> 
    </ul> 
    <script src="//code.jquery.com/jquery-1.11.3.min.js"></script> 
    <script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script> 
      <!-- /.gallery-filter --> 
    <div id="change"> 
    <div class="row"> 
     <div class="isotope-gallery-container"> 
      {% for project in project_filter_category %} 
      <div class="col-md-3 col-sm-6 col-xs-12 gallery-item-wrapper artwork creative"> 
       <div class="gallery-item"> 
        <div class="gallery-thumb"> 
         <img src="{{ project.cover_photo.url }}" class="img-responsive" alt="1st gallery Thumb"> 
         <div class="image-overlay"></div> 
         <a href="{{ project.cover_photo.url }}" class="gallery-zoom"><i class="fa fa-eye" alt="{{ project.title }}"></i></a> 
         <a href="{{ project.id }}" class="gallery-link" target="_blank"><i class="fa fa-link"></i></a> 
        </div> 
        <div class="gallery-details"> 
         <h5>Hepsi</h5> 
        </div> 
       </div> 
      </div> 
     {% endfor %} 
     </div> 
    <!-- /.row --> 
</div> 
<!-- /.container --> 

+0

你是否刪除,然後添加你的元素上點擊事件綁定? – nikhil

回答

2

我想再次按下按鈕時text變量不發生變化,因此它用相同的內容替換change的內容。

將一個console.log("Event fired")添加到函數處理程序,看看它是否再次觸發。

+0

控制檯批准您的想法。當我點擊按鈕時,它會閃光。我怎樣才能做這個改變?我正在添加其他兩個腳本 – kings856

0

我現在看到了,我忘了給JS添加div id = change。由於不存在任何更改div,它不能改變。謝謝你的回答,承認我知道我的JS工作正常@Damian Castro

相關問題