【发布时间】:2018-01-22 14:46:53
【问题描述】:
我有此要求表单业务以保存搜索,允许用户使用保存的搜索数据并重新运行搜索。我已将数据库中的搜索保存为 JSON 对象。问题是当用户通过使用 Select - Dropdown 选择已保存的搜索时,表单应预先填充所有使用搜索保存的选择。当我试图提醒填充函数中的键值时 - 它总是将键显示为 0 并将值显示为整个 JSON 对象。我在这里想念什么?
从数据库返回的 JSON 请求示例如下所示:{"affects":["153","503","537"],"suspect":["101","108"],"state": [],"zip_code":[],"analysis_date_max":["",""],"last_modified_date_min":["",""]}
这是我现有的代码: //问题代码开始
function populate(frm, data) {
var obj = $.parseJSON(data);
//alert (data);
//alert (frm);
alert (obj);
$.each(obj, function(key, value){
alert(key + ' is ' + value);
$('[name='+key+']', frm).val(value);
});
}
// END OF PROBLEM CODE
$('#search_dataselect').on('change', function()
{
getSearchData(this.value);
});
function getSearchData(search_id) {
if (!isNaN(parseInt(search_id))) {
$.ajax({
type: "GET",
url: "/index.cgi?p=json&t=SavedSearch&search_id="+search_id,
success: function(result){
var data = result;
populate('#formSearch',data);
},
});
}
return false;
}
【问题讨论】:
-
搜索页面上的大部分控件都是 MULTISELCT 下拉菜单
标签: javascript php jquery json