jQueryで動作させようとしているコードがあります
$('#example tbody td img').live('click', function () {
var nTr = $(this).parents('tr')[0];
if (oTable.fnIsOpen(nTr)) { /* This row is already open - close it */
this.src = "../compartilhados/img/details_open.png";
oTable.fnClose(nTr);
} else { /* Open this row */
this.src = "../compartilhados/img/details_close.png";
oTable.fnOpen(nTr, fnFormatDetails(oTable, nTr), 'details ui-corner-all' );
}
});
関数fnFormatDetailsは文字列を返すために使用されていましたが、$。ajaxの応答を返すように変更しました。
function fnFormatDetails(oTable, nTr) {
var aData = oTable.fnGetData(nTr);
var parametros = {
NumPA: aData[8]
};
var parametros = jQuery.param(parametros);
$.ajax({
type: "POST",
url: "consultarProvidencias.asp",
data: parametros
}).done(function x(sOut) {
return sOut;
});
}
sOutは、文字列のようなHTMLコードの平和です。何が起こっているのかわかりません。sOutがoTable.fnOpen(最初のコード)にロードされていないためです。ここに示すように、行の詳細にロードする必要があります。
助けてくれてありがとう。