2012-06-14 5 views
0

현재 div의 페이지에 예 및 아니요 버튼을 둘러싸는 ID이 있습니다. 버튼을 선택하면 jQuery는 ID의 정보를 호출하는 add_song.php 파일로 바꿉니다.jQuery는 div에 이미있는 경우에만 변경됩니다.

작가가 변경되면 페이지에서 드롭 다운에 change의 라이브가 있고 keyup입니다.이 변경된 아티스트 ID는 add_song.php입니다. 문제는 예 또는 아니오를 선택했을 때, 내가로드하는 아티스트 이름을 변경하면 add_song.php입니다. 난 단지 changekeyupadd_song.php은 예 또는 작가가 change/keyup에 변경 될 때로드 대신없이 버튼 클릭 후로드 된 작가를 변경할 수 있도록하려면 어떻게

. 여기

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 – frictionlesspulley

답변

0

당신은 .loadcallback functionkeyup/change의 바인딩 이벤트를 이동해야 다음

는 PHP입니다. .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 : 귀하의 의견 및 질문 편집 후 추가 정보로 내 답변을 업데이트했습니다. 그것이 당신의 질문에 대답하는지 확인해보십시오! –

관련 문제