[英]Displaying array data from JavaScript in table
在controller
函數中,我有一個多維數組,說$jobs
我正在view's
JavaScript成功函數alert(data)
獲得此數組。
我必須將此數組傳遞給JavaScript成功函數,並在表視圖中顯示此數組數據,而無需重新加載頁面,我該怎么辦? 我試圖將數組轉換為json,但是沒有任何效果,正確的方法是什么?
以下是我的JavaScript代碼:
function jobsearch()
{
var form=$("#jobSearchForm")
$.ajax({
type: 'POST',
url: '/jobs/processjobsearch/',
dataType: 'json',
data: form.serialize(),
success: function(data){
alert(data);
var json = JSON.parse(data);
$.each(json.jobs, function(index, value) { alert(value);
$.each(value, function(index, value) {
$("#data").append("<tr><td>" + value + '</td></tr>');
});
});
$('#errorr-msg').html(json.errormsg);
}
});
}
在警報數據中,我得到這個數組
Array
(
[0] => Array
(
[id] => 3
[jsp_title] => efsdf
[jsp_subtitle] => sdfsdfdfs
[jsp_desc] => dsfdfsdf
[jsp_uid] => 1
[jsp_ex_id] => php
[jsp_date] => 2015-06-18 12:13:43
[jsp_stdate] => sdfsdf
[jsp_endate] =>
[jsp_nature] => 0
[jsp_location] =>
[jsp_active] => 0
[jsp_etype] => 2
)
[1] => Array
(
[id] => 4
[jsp_title] => java devloper
[jsp_subtitle] => core java advance java
[jsp_desc] => all java related technologies
[jsp_uid] => 1
[jsp_ex_id] => java
[jsp_date] => 2015-06-18 12:51:21
[jsp_stdate] => 213123123
[jsp_endate] => 123123123
[jsp_nature] => 0
[jsp_location] => nagar
[jsp_active] => 0
[jsp_etype] => 3
)
)
編輯:json_encode($ jobs)之后的Json數據
[{"id":"1","jsp_title":"php developer","jsp_subtitle":"","jsp_desc":"develop ecommerce site","jsp_uid"
:"1","jsp_ex_id":"1,3","jsp_date":"2015-06-18 12:14:54","jsp_stdate":"","jsp_endate":"","jsp_nature"
:"1","jsp_location":"pune","jsp_active":"1","jsp_etype":"5"},{"id":"5","jsp_title":"web devloper","jsp_subtitle"
:"design , backend ,fruntend","jsp_desc":"2-4 year Exprience in\nPhp,html5,CssAjax...","jsp_uid":"1"
,"jsp_ex_id":"1|2,3,4","jsp_date":"2015-06-18 12:14:35","jsp_stdate":"11112015","jsp_endate":"11112015"
,"jsp_nature":"0","jsp_location":"baner, pune","jsp_active":"0","jsp_etype":"4"}]
如果要在響應中獲取該數據,則需要使用:
json_encode($array);
print_r()
輸出轉換為JavaScript可讀的JSON。 然后,您可以使用發布的JavaScript / jQuery函數來獲取所需的信息。
根據JSON數據,您需要更新success
函數:
success: function(data){
for (var i = 0; i < data.length; i++) {
tr = $('<tr/>');
var srno = i+1;
tr.append("<td>" + srno + "</td>");
tr.append("<td>" + data[i].jsp_title + "<br>" + data[i].jsp_subtitle + "<br>" + data[i].jsp_desc + "<br>" + data[i].jsp_date + "</td>");
$('#data').append(tr);
}
}
在參考以下內容后,成功函數中的鏈接更改對我有效:
https://stackoverflow.com/questions/17066636/parsing-json-objects-for-html-table
還將ajax調用中的dataType屬性更改為“ json”
dataType: 'json'
成功功能
success: function(data){
for (var i = 0; i < data.length; i++) {
tr = $('<tr/>');
var srno = i+1;
tr.append("<td>" + srno + "</td>");
tr.append("<td>" + data[i].jsp_title + "<br>" + data[i].jsp_subtitle + "<br>" + data[i].jsp_desc + "<br>" + data[i].jsp_date + "</td>");
$('#data').append(tr);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.