2016-05-11 6 views
-1

この問題は過去4時間にわたって発生しています。 jqueryモーダルダイアログで部分的な表示を表示しています。すべてがうまく動作しますが、最初にコントローラに指定されたアクションのポストを行いますが、ダイアログを開くためのすべての後続のクリックはポストを全く行いません。Jqueryモーダルダイアログで古い値が読み込まれる

リンクボタンをクリックするとダイアログが開きます。次回は投稿が何も起こらないのが初めてわかります。親切に私のコードを見て、解決策を提案してください。私は提供されたソリューションのほとんどを試しましたが、どれもうまくいきませんでした。ここにコードがあります。

$(document).ready(function() { 

//Modal window for Payment Summary 
     $('.button-link').on('click', function() { 

      //$('body').find("#paymentSummaryForm").remove();       
      $("#paymentSummaryForm").dialog({ 
       dialogClass: 'no-titlebar', 
       autoOpen: true, 
       position: { my: "center", at: "top+410", of: window }, 
       width: 1000, 
       height: 750, 
       resizable: false, 
       draggable:true, 
       //title: 'Payment Summary', 
       modal: true, 
       open: function (event, ui) { 
        $(this).load('@Url.Action("PaymentSummaryView", "Home", new {id= @DateTime.Now.ToShortTimeString() })'); 
       }, 
       buttons: { 
        Close: function() {        
         $(this).dialog("close"); 
        } 
       } 
      }); 
      return false; 
     }); 

この

は私が働くように見える破壊し、空やそれらの他のoptions..noneの多くを試してみましたが、ダイアログ

<tbody> 
    <tr> 
     <td> 
<button type="button" class="button-link"> 
      @Model.AcctNumber 
    </button></td> 
       </tr> 
      </tbody> 
     </table> 

をトリガーするコードです。私を助けてください。

+0

'Uncaught TypeError:$(...)。dialogは関数ではありません。 'あなたのコードを再現しようとしています。ダイアログボックスhtmlが表示されますか?あなたがしようとしていることは私には全く分かりません。簡単な英語で、ここで何が起こっているのかを定義できますか?ユーザーのストーリーを考えてみましょう。「ユーザーは「モデルアカウント」ボタンをクリックしてから、... – zipzit

+0

確かにユースケースがあります。 .................... 1。ユーザーはウェブサイトにログインし、基本的にリンクであるグリッド内のアカウント番号をクリックします。 2.リンクをクリックすると、アカウントの詳細情報がダイアログボックスに表示されます。3.ユーザーがログオフし、別のユーザーが別のIDでログインしたとすると、モーダルダイアログには最初のユーザーの情報が表示されます。最初に部分ビューのアクションメソッドでポストが発生しますが、2回目にポストが発生せず、前の同じダイアログがロードされます。そのJquery-UIダイアログ – Blossom

+0

ロード機能は最初にロードされているだけです...それはあなたが鮮明な画像を得るのに役立ちますか? – Blossom

答えて

1

IE積極的にキャッシュjquery gets。私は前にこれにぶつかりました。

この質問を参照してください。

How to prevent a jQuery Ajax request from caching in Internet Explorer?

は、URLを一意にするために、GUIDクエリ文字列を追加することもできます。つまり、キャッシュしません。

+0

あなたがコードを見れば、タイムスタンプがURLに追加されてユニークなものになっていても、それは助けてくれません.....( '@ Url.Action( "PaymentSummaryView"、 "Home"、new {id = @DateTime。今すぐ.ToShortTimeString()}) ' – Blossom

+0

あなたはajaxSetupオブジェクトを使ってすべてのajaxキャッシュを無効にしましたか? – Fran

+0

どうすればいいですか?あなたは何を意味するのかよくわかりません...あなたは説明してください? – Blossom