2012-01-21 13 views
0

フィールドをリンクとしてレンダリングし、ユーザーがリンクをクリックしたときにjqueryダイアログを開きたいとします。 次に、ajaxは編集フォームを読み込み、読み込みに失敗した場合にユーザーに警告する必要があります。既に存在していますか?いくつかのヒント、提案、してください?jqgrid:フィールドをリンクとしてレンダリングし、ajax読み込み編集ページを含むjquery.dialogを開く方法は?

私は編集ダイアログを開くために見つけ、再使用、このコードに考えていた:

function showDialog(url, strtitle) { 

     var dialog = $('#dialog'); 

     if (!strtitle) strtitle = 'Errore apertura finestra!'; 

     $('#dialog').dialog('destroy'); 
     $('#dialog').show(); 

     $("#dialog").dialog({ 
      resizable: true, 
      modal: true, 
      draggable: true, 
      overlay: { 
       backgroundColor: '#000', 
       opacity: 0.9 
      }, 
      open: function() { 
       $(this).load(url); 
      }, 
      title: strtitle, 
      buttons: { 
       'OK': function() { 

        $(this).dialog("close"); 
       } 
      } 
     }); 

おかげで事前

+0

あなたのフィールドについて詳しく知りたいですか? –

+0

@Heera:フィールドにはすでにURLが含まれています。たとえば、「http:// mysite/mycontroller/action/my_id」と入力します。フィールドは別にして、私はオープンなダイアログに集中できるように努力します。完全なコードが必要だと思うなら、ここに置くことができます。私は単純化するだけではありませんでした。ありがとうございました! – Larry

+0

ajax呼び出しでサーバーからデータをロードしてjqueryダイアログに入れる方法を知りたいですか? –

答えて

0

に私は正確に何をしたいか分からないが、私は、このコードスニペットを願っていますあなたにアイデアを与えるでしょう。

$(".editlink").click(function(e){ 
    e.preventDefault(); 
    e.stopImmediatePropagation(); 
    var url=$(this).attr("href"); 

    $.ajax({ 
     url: url, 
     success: function(msg){ 
      if(msg.length>0) 
      { 
       $("<div id='newDynamicDiv'></div>").html(msg) 
       .dialog({ 
        resizable: false, 
        minWidth: 400, 
        modal: true, 
        title: 'Dialog Title', 
        hide: 'scale', 
        buttons: { 
        Update: function(e) { 
        // your code 
        }, 
        Close: function() { 
         $(this).dialog("close"); 
        } 
       }, 
       close: function(e) { 
        $(this).remove(); 
       } 
       }); 
      } 
      else 
      { 
       alert("Empty Response"); 
      } 
     }, 
     error:function(e){ alert("Failed!");} 
    }); 
}); 
+0

ありがとうございます@ヘラ。それはまさに私が必要なものです! 残念ながら、私は正常に動作しませんでした。$ .ajaxまで静的なURLでURLを変更しようとしましたが、最初はEmpty Responseになります... – Larry

関連する問題