私はこれらのコードを使用します:
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 に投稿して送信したいのですが、その方法がわかりません。