Я работаю над датируемый, что заселить данные стороне сервера, проблема я столкнулся в том, что он всегда дает окно с предупреждением, которое показываетява сторона DataTable сервер вопрос
DataTables предупреждение: таблица ID = firmtable - Запрошенный неизвестный параметр «1» для строки 0. для получения дополнительной информации об этой ошибке, пожалуйста, см http://datatables.net/tn/4 я не в состоянии проследить, где этот вопрос может быть
мой
JSON{
"sEcho":"3",
"iTotalRecords":10,
"iTotalDisplayRecords":10,
"aaData":
"[
{\"LogId\":\"108\",
\"tableName \":\"game\",
\"columnName\":\"Status\",
\"oldValue\":\"0\",
\"newValue\":\"1\",
\"changeTypeText\":\"Update \",
\"changedByName\":\"abc\"}
]"
}
это, как я работал его на стороне сервера
Iterator<LogInfo> i = logList.iterator();
int row = 0;
JsonObject returnObj = new JsonObject();
JsonArray dataArray = new JsonArray();
while (i.hasNext()) {
LogInfo logInfo = (LogInfo) i.next();
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("logId", logInfo.getLogId());
jsonObject.addProperty("tableName", logInfo.getTableName());
jsonObject.addProperty("columnName", logInfo.getColumnName());
jsonObject.addProperty("oldValue", logInfo.getOldValue());
jsonObject.addProperty("newValue", logInfo.getNewValue());
jsonObject.addProperty("changeTypeText", logInfo.getChangeTypeText());
jsonObject.addProperty("changedByName", logInfo.getChangedByName());
row++;
dataArray.add(jsonObject.getAsJsonObject());
}
returnObj.addProperty("sEcho", "3");
returnObj.addProperty("iTotalRecords", row);
returnObj.addProperty("iTotalDisplayRecords", row);
returnObj.addProperty("aaData", dataArray.toString());
PrintWriter out = response.getWriter();
Gson gson = null;
GsonBuilder builder = new GsonBuilder();
builder.setDateFormat(JarolConstants.AJAX_DATE_FORMAT);
gson = builder.create();
String resultStr = gson.toJson(returnObj);
out.print(resultStr);
out.close();
Что происходит на стороне клиента, что туЬаЫе не получает заселенной HTML код
скрипт
$(document).ready(function() {
$('#firmtable').dataTable({
"bProcessing" : true,
bServerSide : true,
sAjaxSource : "./log!list.action",
sServerMethod : "POST"
});
}); </script>
<table id="firmtable">
<thead>
<tr class="detail">
<th><s:property value="getText('auditLog.jsp.transactionId')" /></th>
<th><s:property value="getText('auditLog.jsp.tableName')" /></th>
<th><s:property value="getText('auditLog.jsp.columnName')" /></th>
<th><s:property value="getText('auditLog.jsp.oldValue')" /></th>
<th><s:property value="getText('auditLog.jsp.newValue')" /></th>
<th><s:property value="getText('auditLog.jsp.changeTypeId')" /></th>
<th><s:property value="getText('auditLog.jsp.changeBy')" /></th>
<th><s:property value="getText('auditLog.jsp.changeOn')" /></th>
<th class="edit"><s:property value="getText('global.action')" /></th>
</tr>
</thead>
<tbody>
</tbody>
</table>
РЕДАКТИРОВАТЬ я также попытался установить его в
returnObj.addProperty ("sEcho", Integer.parseInt (request.getParameter ("sEcho"))) значение sEcho;
, но никакого результата, тот же вопрос я не подвожу
какой результат я получаю это таблица первая колонка получает заполняется с содержанием aaData как этот
[ { L о г I d т.е. одна буква в первой колонке
У меня есть это для этого returnObj.addProperty («sEcho», Integer.parseInt (request.getParameter («sEcho»))); но все тот же вопрос – Complicated
Не пытайтесь разобрать целое число. –
nope same issue .. – Complicated