2016-05-12 38 views
-1

我的菜單鏈接使用jQuery腳本將各種HTML腳本加載到index.php頁面上的div中。菜單項「信息」將sectionInfo.html放入index.php頁面。這個腳本包含一個簡短的表單,如果他們濫用表單,可能會彈出一個alert()。但是,當警報被接受時,頁面重新加載到默認index.php,然後用戶必須再次從菜單中選擇信息以返回到表單所在的位置。我怎樣才能從警報中重新加載正確的div?從javascript警告中加載div

jQuery腳本的菜單鏈接:

$('.trigger').click(function(){ 
    var url = $(this).attr('href'); 
    $('#target').load(url) 

菜單鏈接:

<ul> 
    <li> 
     <a href="sectionInfo.html" class="trigger">Info</a> 
    </li> 
</ul> 

警報:

function validateMyForm1() { 
    alert("Alert goes here "); 
    window.location = 'href="sectionInfo.html" class="trigger"'; 
} 

在index.php

體的DIV
<div id="target"></div> 

我查了其他帖子,並嘗試了各種選擇。請幫忙,如果你點擊我,請告訴我爲什麼,因爲我經常被點擊,不知道爲什麼。謝謝。

https://codereview.stackexchange.com/questions/64192/loading-div-sections-from-separate-files

calling jquery from a javascript function

Go to URL after OK button in alert is pressed

的jQuery腳本較長腳本,我包括在此編輯的部分:其下部的滑下文本的HTML文件。

$('.trigger').click(function(){ 
    var url = $(this).attr('href'); 
    $('#target').load(url, function() { 
     $('#faqs h1').each(function() { 
      var tis = $(this), state = false, answer = tis.next('div').hide().css('height','auto').slideUp(); 
      tis.click(function() { 
       state = !state; 
       answer.slideToggle(state); 
       tis.toggleClass('active',state); 
      }); 
     }); 
    }); 
    return false; 
}); 
+5

究竟是你想在這裏做什麼?:'了window.location =「HREF =‘sectionInfo.html’級=‘觸發’」 ;' – David

+0

我正在嘗試各種可能性。謝謝你指出什麼可能是錯的。 –

+0

我再次投了票,我不知道爲什麼。如果你沒有說明原因,那麼投票的重點是什麼。沒有什麼變化,我沒有得到任何理解,從而避免再次發生。 –

回答

1

在你的JS一對夫婦的問題,在你的第一個例子中,你需要調用preventDefault()event停止鏈接被跟蹤:

$('.trigger').click(function(e) { 
    e.preventDefault(); 
    $('#target').load($(this).attr('href')) 
}); 

在第二個代碼示例您的字符串位置完全錯誤,您只需將URL設置爲字符串即可。我個人比較喜歡這樣做使用assign()方法,像這樣:

function validateMyForm1() { 
    alert("Alert goes here"); 
    window.location.assign('sectionInfo.html'); 
} 
+0

我試過你的建議,但我可能沒有能夠正確地集成你的頂級代碼,因爲我的jQuery代碼是我沒有包含的更長的腳本的一部分,因爲它具有不同的功能(滑動文本)....默認索引。 PHP文件繼續進來。請你重新看看我編輯的問題,看看完整的jQuery並提出建議。謝謝。 –

+0

我把我的網站精簡到最低限度,刪除滑動文本,縮短jQuery完全按照您所描述的,測試,我仍然返回到index.php的開始div。我在腳本中的各個地方放置了警報函數,並且我仍然被返回到默認的div? –