2016-05-12 11 views
-1

メニューのリンクでは、jQueryスクリプトを使用してindex.phpページのdivにさまざまなHTMLスクリプトを読み込みます。メニュー項目 'Info'はsectionInfo.htmlindex.phpページに入ります。このスクリプトには短いフォームが含まれており、フォームを誤って使用した場合はalert()がユーザーに表示されます。しかし、アラートが受け入れられると、ページはデフォルトのindex.phpにリロードされ、ユーザーはメニューからInfoを選択してフォームがどこに戻るかを選択する必要があります。アラートから正しい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ファイルを下にスライドしているの下部。あなたのJSで

$('.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

=「のhref =『sectionInfo.html』クラス=『トリガー』を」 ; ' – David

+0

私は様々な可能性を試していました。何が間違っているかを指摘していただきありがとうございます。 –

+0

もう一度私は投票し、私はなぜか分からない。あなたが理由を言わないなら、ダウン投票のポイントは何ですか?何も変わらず、私はそれをもう一度避けるために私の理解で何も得られません。 –

答えて

1

問題のカップル、あなたの最初の例では、あなたは守られて、リンクを停止するeventpreventDefault()を呼び出す必要があります:第二のコードで

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

をあなたの文字列の位置をサンプリングしています完全に間違っている場合は、URLを文字列として設定する必要があります。個人的に私はこのように、assign()方法を使用してこれを行うことを好む:

あなたは `?:ここでwindow.locationのをやろうとしている地球上の何
function validateMyForm1() { 
    alert("Alert goes here"); 
    window.location.assign('sectionInfo.html'); 
} 
+0

私はあなたの提案を試みましたが、私のjQueryコードが、別の機能(スライディングテキスト)を持っているので、含まれていないより長いスクリプトの一部であったため、トップコードを正しく統合することができなかったかもしれません。 PHPファイルが引き続き入ってきます。私の編集した質問を見直し、jqueryの完全版を見て、提案してください。ありがとうございました。 –

+0

私は自分のサイトを最小限に抑え、スライディングテキストを削除し、記述したようにjQueryを正確に短縮してテストしました。index.phpの最初のdivに戻ります。私はスクリプト内のさまざまな場所に警告関数を配置し、私はまだデフォルトのdivに返されている??? –

関連する問題