0

私はこれらのコードを使用します:

     jQuery("#rowed2").jqGrid({        
    url:'server.php?q=3',
    datatype: "json",
        colNames:['Acc','Id','Ciudad', 'Corporacion','Radicado','Ultima Actuacion','Anotaciones'],
    colModel:[
    {name:'act',index:'act', width:72,  sortable:false},
    {name:'id',index:'id', width:31},
    {name:'ciudadh',index:'ciudadh', width:100, editable:true},
    {name:'corporacionh',index:'corporacionh', width:350, align:"right",editable:true,fixed:true },
    {name:'radicado',index:'radicado', width:190, align:"right",editable:true},     
    {name:'ultima',index:'ultima', width:160,align:"right",editable:true},      
    {name:'anotaciones',index:'anotaciones', width:200, sortable:false,editable:true}   
    ],


    rowNum:200,
    rowList:[10,20,30],
    imgpath: 'css',
    pager: jQuery('#prowed2'),
    sortname: 'actionID',
viewrecords: true,

sortorder: "desc",
height: "100%",


    loadComplete: function(){
    $("tr.jqgrow:odd").addClass('myAltRowClass');
            var ids = jQuery("#rowed2").getDataIDs();
            for(var i=0;i<ids.length;i++){
                    var cl = ids[i];
                    be = "<input style='height:20px;width:70px;' type='button' value='Modificar' onclick=jQuery('#rowed2').editRow("+cl+"); /><br>"; 
                    se = "<input style='height:20px;width:70px;' type='button' value='Guardar' onclick=jQuery('#rowed2').saveRow("+cl+"); /><br>"; 
                    ce = "<input style='height:20px;width:70px;' type='button' value='Cancelar' onclick=jQuery('#rowed2').restoreRow("+cl+"); />"; 

            send = "<input class='sendbuttons' id='tbuttonSend"+cl+"' type='button' value='Send' /><br />";
    clear = "<input class='sendbuttons' id='tbuttonClear"+cl+"' type='button' value='Send' /><br />";

            jQuery("#rowed2").setRowData(ids[i],{act:be+se+ce,anotaciones:send+clear})
            }    






             $(".sendbuttons").click(function(){
    alert("got to 1");
  });



    },


    editurl: "server2.php"
     });


   //botonañadir
   $("#bedata").click(function(){
jQuery("#rowed2").jqGrid('editGridRow',"new",{height:380,reloadAfterSubmit:false});
});

//botonborrar
$("#bedata2").click(function(){
var gr = jQuery("#rowed2").jqGrid('getGridParam','selrow');
if( gr != null ) jQuery("#rowed2").jqGrid('delGridRow',gr, {reloadAfterSubmit:false});
else alert("Antes de hacer clic en este boton seleccione el proceso que desea borrar!");
      });

    var timeoutHnd;
    var flAuto = false;

     function doSearch(ev){
if(!flAuto)
    return;
    //  var elem = ev.target||ev.srcElement;
if(timeoutHnd)
    clearTimeout(timeoutHnd)
timeoutHnd = setTimeout(gridReload,500)
    }

      function gridReload(){
var nm_mask = jQuery("#item").val();
var cd_mask = jQuery("#search_cd").val();
jQuery("#rowed2").jqGrid('setGridParam',{url:"server.php? nm_mask="+nm_mask+"&cd_mask="+cd_mask,page:1}).trigger("reloadGrid");
     }
      function enableAutosubmit(state){
flAuto = state;
jQuery("#submitButton").attr("disabled",state);
   }

だから私はこのボタン

     send = "<input class='sendbuttons' id='tbuttonSend"+cl+"' type='button' value='Send' /><br />";  

このボタンと同じように、ポスト経由でデータを送信できます。

  be = "<input style='height:20px;width:70px;' type='button' value='Modificar'        onclick=jQuery('#rowed2').editRow("+cl+"); /><br>"; 
                se = "<input style='height:20px;width:70px;' type='button'  value='Guardar' onclick=jQuery('#rowed2').saveRow("+cl+"); /><br>"; 
                ce = "<input style='height:20px;width:70px;' type='button' value='Cancelar' onclick=jQuery('#rowed2').restoreRow("+cl+"); />"; 

たとえば、私のカスタムボタンは、他のパラメーターを使用して「カスタム」と呼ばれるopperを送信できます。

それは可能ですか?どうやって?

ご協力いただきありがとうございます。

アップデート:

私はこのような ajax 関数を実行しようとしています:

      $(".sendbuttons").click(function(){
        $.ajax({
        type:'POST',
        url :'server2.php?id=+ids[i]+&oper=edit1',
        beforeSend : function(){
    $('#mensaje5').show().html('<br><br><h2>Por favor espere....<br><img src="c.gif" width="100" height="100" alt="cargando" border="0">');

        },
        success: function (){
         var nancu = parseInt(ids);
            alert(mega);
                ;

        },
        complete: function(){
     $('#form_data4').slideUp();

                }

    });



             });

私のニーズには素晴らしいアイデアのようですが、この行に問題があります:

          url :'server2.php?id=+ids[i]+&oper=edit1',

ボタン行の ID を取得し、この ID を URL に投稿して送信したいのですが、その方法がわかりません。

4

1 に答える 1

0

これを試して

これを変えるsend = "<input class='sendbuttons' id='tbuttonSend"+cl+"' type='button' value='Send' /><br />";

send = "<input class='sendbuttons' id='tbuttonSend"+cl+"' onclick='send("+cl+");' type='button' value='Send' /><br />";

Jqueryのメイン関数の外に新しい関数を追加します

' function send(id)     $.ajax({
    type:'POST',
    url :'server2.php?id='+id+'&oper=edit1',
    beforeSend : function(){
$('#mensaje5').show().html('<br><br><h2>Por favor espere....<br><img src="c.gif" width="100" height="100" alt="cargando" border="0">');

    },
    success: function (){
     var nancu = parseInt(ids);
        alert(mega);
            ;

    },
    complete: function(){
 $('#form_data4').slideUp();

            }

});}'
于 2013-02-16T04:19:49.120 に答える