【发布时间】:2014-04-07 07:37:12
【问题描述】:
我知道对此有很多问题,但我仍然不确定该怎么做。
我有一个名为“CuisineForm”的 HTML 表单,在用户选择美食类型后,AJAX 将表单发送到服务器。 AJAX 调用工作正常,服务器以 JSON 响应响应,其中包含此特定美食的所有服务时间。这些服务时间分为早餐、午餐和晚餐。
这些时间需要以相同的形式填充到 3 个单独的下拉列表中。但我真的不知道如何处理 JSON 结果以填充表单中的 3 个下拉列表。
这是来自 PHP 服务器端脚本的 JSON 响应。 请注意,这是在 PHP 脚本中使用“echo json_encode()”生成的。
{"breakfast":[{"09:00:00":"9:00 am"},{"09:30:00":"9:30 am"}],"lunch":[{"12:00:00":"12:00 pm"},{"12:30:00":"12:30 pm"}],"dinner":[{"19:00:00":"7:00 pm"},{"19:30:00":"7:30 pm"}]}
这是我的 $.post 代码。
$.post( "gettimeslots", $( "#CuisineForm" ).serialize(), function() {
alert( "success" );
})
.done(function(data) {
// Not sure what code to write here to populate dropdown
})
.fail(function() {
alert( "There was a problem getting the dropdown values!" );
})
.always(function() {
alert( "always" );
});
这是我要填充的下拉列表
<select name="breakfasttimes" id="breakfasttimes"></select>
<select name="lunchtimes" id="lunchtimes"></select>
<select name="dinnertimes" id="dinnertimes"></select>
大多数实现倾向于使用 $.getJSON。但如上所示,我使用的是 $.post 。请告诉我是否应该改用 $.getJSON。
有人可以提供一些指针或代码建议吗?
谢谢 凯文
【问题讨论】:
标签: jquery ajax arrays json html.dropdownlistfor