jQuery를 사용하여 Ajax를 사용하여 다른 WebForm에서 데이터를 가져 오는 코드를 작성했으며 올바르게 작동합니다. 코드를 다른 프로젝트에 복사하고 있지만 제대로 작동하지 않습니다. 클래스 멤버가 클릭되면 입력 ID에 연결 한 ProductID가 표시되지만 $ .get의 데이터는 알려주지 않습니다. 테스트 페이지 (/Products/Ajax/Default.aspx)는 단순히 "TESTING ..."텍스트를 반환합니다. Internet Explorer에 Web Development Helper를 설치했는데 요청이 테스트 페이지로 이동하고 상태가 올바른 반환 텍스트로 200이라는 것을 보여줍니다. 그러나 jQuery가 요청한 데이터를 표시하기 전에 내 호출 페이지를 새로 고칩니다. 아래는 내 페이지의 코드 조각입니다. 다른 코드 블록이 필요한지 알려주십시오. 고맙습니다!
<script type="text/javascript">
$(document).ready(function() {
$(".addtocart_a").click(function() {
var sProdIDFileID = $(this).attr("id");
var aProdIDFileID = sProdIDFileID.split("_");
var sProdID = aProdIDFileID[5];
// *** This alert shows fine -- ProdID: 7
alert("ProdID: " + sProdID);
$.get("/Products/Ajax/Default.aspx", { test: "yes" }, function(data) {
// *** This alert never gets displayed
alert("Data Loaded: " + data);
}, "text");
});
});
</script>
<input src="/images/add_to_cart.png" name="ctl00$ctl00$ContentPlaceHolder1$ContentPlaceHolder1$aAddToCart_7" type="image" id="ctl00_ctl00_ContentPlaceHolder1_ContentPlaceHolder1_aAddToCart_7" class="addtocart_a" />
이것은 작동했습니다! 이것은 또한 효과가 있었다 : e.preventDefault(); 왜 내가 마지막 프로젝트에서 그렇게하지 않아도 되는가? –
우수! 다행 그것을 듣고 잘 알고 :) – ewakened