2012-06-14 26 views
0

我目前有一個div的頁面,ID圍繞着yes和no按鈕。當選擇這些按鈕時,jQuery將用它調用的add_song.php文件替換ID中的信息。jQuery只有當它已經存在於div中時纔會改變

我有一個活change和下降住keyup了網頁上的當藝人後,你在add_song.php改變了藝術家ID。問題是當我選擇是或否時,如果我更改藝術家名稱加載add_song.php

如何只允許changekeyup改當add_song.php已經是或否按一下按鈕,而不是它當藝人是在change/keyup變更後的裝載後裝入藝術家。

這裏是PHP:

echo '<span class="edit-buttons"><input type="submit" value="yes" id="add_existing_song"></span>'; 
echo '<span style="padding-left:10px" class="edit-buttons"><input type="submit" value="no" id="add_new_song"></span>'; 
echo '<div id="display_add_new_song"></div>'; 

對不起這裏是jQuery代碼:

$(document).ready(function(){ 
     $("#add_new_song").live("click", function() { 
     var artistid = $("#artist").val(); 
     $("#display_add_new_song").load("php/add_song_new.php?var1=" + artistid); 
}); 
}); 

$(document).ready(function(){ 
     $("#artist").change(function() { 
     var artistid = $("#artist").val(); 
     $("#display_add_new_song").load("php/add_song_new.php?var1=" + artistid); 
}); 
}); 

$(document).ready(function(){ 
     $("#artist").keyup(function() { 
     var artistid = $("#artist").val(); 
     $("#display_add_new_song").load("php/add_song_new.php?var1=" + artistid); 
}); 
}); 
+3

哪裏碼? – Sparky

+2

而不是描述問題,最好是發佈代碼。 – undefined

+3

只是一個觀點:嘗試發佈HTML/JavaScript而不是描述HTML – frictionlesspulley

回答

0

你應該將事件的keyup/change結合到.loadcallback function.load可能需要第二個參數,該參數是內容加載完成後立即執行的回調函數,允許您在加載後立即將事件綁定到#artist

另外,您可以合併待在文檔準備完成後執行的JavaScript到一個塊中,並且可以將要綁定的事件合併到相同的功能中,這將刪除腳本中的一些重複代碼。

考慮到你的代碼,你應該改變它的東西是這樣的:

$(document).ready(function(){ 
    $("#add_new_song").live("click", function() { 
     var artistid = $("#artist").val(); 
     $("#display_add_new_song").load("php/add_song_new.php?var1=" + artistid, function(){ 
      $("#artist").on("keyup change", function() { 
       var artistid = $("#artist").val(); 
       $("#display_add_new_song").load("php/add_song_new.php?var1=" + artistid); 
      }); 
     }); 
    }); 
}); 
+0

所以當我改變#artist時,它會自動加載php/add_song_new.php在

,當我不希望它被加載,直到點擊#add_new_song。我想要它的keyup,並且在它已經被加載到div之後改變工作。可以觸發帳戶嗎? – mxcoop98

+0

@ mxcoop98:在您的評論和問題編輯後,我已經更新了一些更多信息。看看它是否回答你的問題! –

相關問題