2010-08-27 26 views
5

मैं jqGrid के साथ Jquery मोडल पुष्टिकरण का उपयोग कैसे कर सकता हूं? जब मैं अपने प्रविष्टियों प्रस्तुत करेगा कहते हैं कि यह एक मॉडल संवाद पॉप अप और सर्वर के लिए भेजने के लिए संदेश के साथ नाम प्रदर्शित होगा ..jQuery मोडल संवाद और jqGrid

मेरे दृष्टिकोण

$("#dialog-confirm").dialog({ 
      autoOpen:false, 
      resizable:false, 
      height:180, 
      modal:true, 
      buttons:{ 
       'Confirm': function(){ 
          var ids =jQuery("#list10").jqGrid('getGridParam','selarrrow'); 
           $.ajax({ 
            type: "POST", 
            url: "url&names="+ids, 
            data: JSON.stringify(ids), 
            dataType: "json" 
          }); 
           }, 
          'cancel': function(){ 
            $(this).dialog('close'); 
            } 
     } 
     }); 
     }); 

मेरी एचटीएमएल:

<div id="dialog-confirm" title="Confirm"> 
     <p><span class="ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Are you sure want to cancel(or send this names)#names?</p> 
    </div> 

उस संवाद बॉक्स में मुझे उन नामों को भी भेजने की ज़रूरत है ... लेकिन यह दृष्टिकोण मुझे मेरे ग्रिड से नाम नहीं देगा जिसे मैंने सर्वर पर भेजने के लिए चुना था।

उत्तर

13

निम्नलिखित कोड आपको क्या चाहिए

$("#wics").click(function(){ 
    var grid = jQuery("#list10"); 
    var ids = grid.jqGrid('getGridParam','selarrrow'); 
    if (ids.length>0) { 
     var names = []; 
     for (var i=0, il=ids.length; i < il; i++) { 
      var name = grid.jqGrid('getCell', ids[i], 'Name'); 
      names.push(name); 
     } 
     //alert ("Names: " + names.join(", ") + "; ids: " + ids.join(", ")); 
     $("#names").html(names.join(", ")); 
     $("#dialog-confirm").dialog({ 
      height:280, 
      modal:true, 
      buttons:{ 
       'Cancel': function(){ 
        $(this).dialog('close'); 
       }, 
       'Confirm': function(){ 
        //alert("Confirm"); 
        $.ajax({ 
         type: "POST", 
         url: "/cpsb/unprocessedOrders.do", 
         data: { method: "releaseTowics", 
          orderNum: JSON.stringify(ids), 
          names: JSON.stringify(names) 
         }, 
         dataType: "json", 
         success: function(msg){ 
          alert(msg); 
         }, 
         error: function(res, status, exeption) { 
          alert(res); 
         } 
        }); 
       } 
      } 
     }); 
    } 
}); 

कारण होगा की सटीक समाधान सर्वर साइड पर आपकी आवश्यकता पर निर्भर करता है कर सकता है। आप यहां http://www.ok-soft-gmbh.com/jqGrid/DataToMultiSelect2.htm पर कोशिश कर सकते हैं (AJAX अनुरोध के बिना)। कुछ आइटम चुनें और "चयनित प्राप्त करें" बटन पर क्लिक करें।  

+0

धन्यवाद! यह वही है जो मैं देख रहा हूं ... – paul

+0

@ ओलेग: हम jqGrid के डिफ़ॉल्ट पुष्टिकरण संवाद बॉक्स का उपयोग कैसे कर सकते हैं? –

+1

@ITppl: निम्न कोड आज़माएं: '$ .jgrid.info_dialog (" कुछ शीर्षक जो HTML टेक्स्ट "हो सकता है," कुछ अन्य HTML टेक्स्ट ", सत्य);' । आप अतिरिक्त विकल्पों के लिए एक अतिरिक्त पैरामीटर का उपयोग कर सकते हैं: [स्रोत कोड] देखें (https://github.com/tonytomov/jqGrid/blob/v4.4.1/js/grid.common.js#L184-200) – Oleg

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^