2016-11-28 64 views
0

在我的django網絡應用程序上,我有一個網頁,當點擊一個按鈕時,打開一個模式窗體。在這個表格中有幾個字段和一個保存按鈕。當按下保存按鈕時,我想要執行某些操作,例如打印警報。這裏是我的嘗試:如何獲取模型表單按鈕的點擊事件?

型號形式代碼:

<div class="container-content"> 
    <div class="infor-experience col-lg-2 more_info"> 
    {% if request.user|isEmployer %} 
     <div class="add-to-list">{% include "layout/addtolistmodal.html" %}</div> 
     <div class="connect-now bottom">{% include "layout/bidmodal.html" %}</div> 
    {% endif %} 
<!-- more code below here --> 
在相同的HTML文件,模式上面

的Javascript塊:

<script type="text/javascript"> 
    // Add to short list handler 
    $('.add-to-list').on('click', '.submit', function(e) { 
     alert("TEST"); 
    }) 
</script> 

基本上,我想要做的是用戶點擊時保存在添加到列表模式中,打印警報「測試」。

從我的理解它不工作的原因是因爲它找不到'.add-to-list',但我應該使用什麼呢?

+1

您能否顯示您的完整模態代碼,包括「保存按鈕」? –

+0

@GuruprasadRao這是怎麼回事:https://jsfiddle.net/#&togetherjs=3dqy3zr2ya – user2573690

+0

你小提琴的鏈接是壞的,不會讓我的代碼 –

回答

1

只需附上click event到已經存在element這似乎是div.infor-experience,因爲你的modalhtmlDOM load後會被追加。另外,如果您已提供任何條件供他們渲染,請確保您的script在網絡瀏覽器中呈現。

$('.infor-experience').on('click', '.submit', function(e) { 
     alert("TEST"); 
}) 
0

這可能是您的腳本的定位。在執行時,DOM可能還沒有準備好或存在。

你可以換你喜歡的DOM相關代碼,以便:

$(document).ready(init); 

function init(){ 
    $('.add-to-list').on('click', '.submit', function(e) { 
    alert("TEST"); 
    }) 
} 
0

試試這個

$(document).ready(function() { 
    $('.add-to-list').on('click', '.submit', function(e) { 
     alert("TEST"); 
    }); 
}); 

你應該在$添加代碼(文件)。就緒(),以便等待加載完整的DOM,然後在加載DOM之前重複該方法。