我正在使用jQuery datatable插件。我试图获取记录计数,并根据计数使用jQuery进行一些HTML操作。
到目前为止,我已经使用了这段代码
$('#tb').on('init.dt', function () {
var totalRecords = table.page.info().recordsTotal;
if(totalRecords != 0) {
$('#tb_div').show();
table.columns.adjust().draw();
}else{
$('#tb_div').hide();
$('#no_rec_msg').show();
}
} );
但是这个init.dt只执行一次而且它不能用table.ajax.reload();
任何可以解决这个问题的API方法吗?
答案 0 :(得分:1)
使用xhr
事件代替将在Ajax请求完成时触发。
JSONObject jsonObject = new JSONObject();
String encoded = Utility.encodeToBase64(bitmap);
jsonObject.put(AVATAR, encoded);
sendTo(MY_URL_ON_DB, jsonObject.toString());
public static String encodeToBase64(Bitmap bitmap) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 50, baos);
String encoded = Base64.encodeToString(baos.toByteArray(), Base64.DEFAULT);
return encoded;
}
public static String sendTo(String url, String json) {
String output = null;
try {
OkHttpClient httpClient = new OkHttpClient();
RequestBody body = RequestBody.create(JSON, json);
Request request = new Request.Builder().url(url).post(body).build();
Response response = httpClient.newCall(request).execute();
output = response.body().string();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return output;
}