我有一個功能性的JSP頁面,它接受URL參數並使用基於這些參數的信息更新頁面上的表格。jQuery .load引起頁面刷新的方法AJAX
我有一組不同的選項卡,它們將所述URL paraneters傳遞到它們所在的頁面,然後重新加載並顯示這些新數據。
我一直在嘗試使用jQuery .load和.ajax方法,以便我可以將這些URL參數傳遞給服務器上的頁面,然後僅通過AJAX提供表格而不是整個頁面刷新。
我遇到的問題是,有時頁面會刷新,我無法弄清楚爲什麼會發生這種情況。
這裏是jQuery的:
$('ul#coverTabs > li').live('click', function() {
// Removes default class applied in HTML and onClick adds 'currentTab' class
$(".currentTab").removeClass("currentTab");
$(this).addClass("currentTab");
// Find href of current tab
var $tabValue = $('ul#coverTabs > li.currentTab > a').attr('href');
// Load new table based on href URL variables
$('#benefit').load($tabValue + ' #' + 'benefit');
/*$.ajax({
cache: false,
dataType: "html",
url: $tabValue,
success: function(data) {
//var $tableWrap = $('#benefit');
//$('.benefitWrap').append($('.benefitWrap'));
//alert($tableWrap);
},
});*/
return false;
});
下面是選項卡中的HTML:您正在返回false
<ul id="coverTabs">
<li class="currentTab"><a href="quoteAction.do?getBenefitLevelDetails=getBenefitLevelDetails&productPolicyId=748#a1">Individual</a></li>
<li><a href="quoteAction.do?getBenefitLevelDetails=getBenefitLevelDetails&productPolicyId=749#a1">Couple</a></li>
<li><a href="quoteAction.do?getBenefitLevelDetails=getBenefitLevelDetails&productPolicyId=750#a1">Family</a></li>
<li><a href="quoteAction.do?getBenefitLevelDetails=getBenefitLevelDetails&productPolicyId=751#a1">Single Parent Family</a></li>
</ul>
在元素的事件處理程序中返回false會阻止導航,與preventDefault()相同。我同意preventDefault()是可取的,但我不認爲它是他的問題。 – 2010-02-24 01:15:57
儘管最初我有同樣的內容,但是'return false'在這種情況下不起作用,因爲它也會觸發'stopPropogation()',這會阻止事件冒泡到'li'。 – 2010-02-24 03:49:24