【发布时间】:2015-08-20 05:45:21
【问题描述】:
Javascript
$.post(
SITE_URL+"mycontroller/myAction",
{
start_date : '01-JUL-15',
end_date : '31-JUL-15',
resource_ids : '100,200',
project_id : 10
},
function(json){
alert(json);
}, 'json');
var selResId = jQuery('#grid').jqGrid('getGridParam', 'selarrrow');
resourceLength = selResId.length;
if (resourceLength > 0) {
var names = [];
var j=1;
for (var i=0, il=selResId.length; i < il; i++) {
var name = jQuery('#grid').jqGrid('getCell', selResId[i], 'USER_NAME');
$('#addr'+j).html("<td style='text-align:center;'>"+name+"</td><td style='text-align:center;'>"+skill+"</td><td>"+status+"</td>");
$('#resource_table').append('<tr id="addr'+(j+1)+'"></tr>');
j++;
}
}
将附加数据的 HTML
<table class="table table-striped table-hover" id="resource_table">
<tbody>
<tr id='addr1'></tr>
</tbody>
</table>
PHP 数据输出
$result =
Array
(
[0] => Array
(
[USER_ID] => 100
[USER_NAME] => User One
[SKILL] => Application Software
[STATUS] => Onsite
)
[1] => Array
(
[USER_ID] => 200
[USER_NAME] => User Two
[SKILL] => Application Software
[STATUS] => Offshore
)
);
进一步
foreach ($result as $final_result){
$skills[] = $final_result['SKILL_NAME'];
$status[] = $final_result['ACTUAL_HOURS'];
}
$result_arr = array();
$result_arr['skills'] = $skills;
$result_arr['status'] = $status;
echo json_encode($result_arr);exit;
打印$result_arr
Array
(
[skills] => Array
(
[0] => Application Software
[1] => Application Software
)
[status] => Array
(
[0] => Onsite
[1] => Offshore
)
)
我可以使用 jqgrid 代码var name = jQuery('#grid').jqGrid('getCell', selResId[i], 'USER_NAME'); 动态附加用户名,但是我如何发送 PHP 数据作为响应以根据相关用户动态显示 Skill 和 Status,如下图所示。
【问题讨论】:
-
but how can I process PHP data到底是什么意思?你想把技能传给php脚本吗? -
发送数据作为响应并在html中传递以显示技能和状态。
-
上面的json是你从
$.post得到的?如果是,那么您可以使用 for 循环内的Json响应返回的值设置技能和状态。 -
@dreamweiver 以及如何去做?如何将 PHP 输出传递回成功函数并在 html 中设置值,就像对 user_name 所做的那样。请查看更新的问题
-
为此,您只需输出您需要使用
echo将其发送给客户端的数据。我已经在下面发布了相同的详细信息
标签: php jquery ajax json jqgrid