当前位置: 首页 > 面试题库 >

我需要使用JSON响应填充下拉菜单的帮助

谢骏奇
2023-03-14
问题内容

我从我的C#网络方法中以这种格式重新获得了JSON:

{"d":["ADAMS CITY","BOULDER","ANTON","ARBOLES"]}

我现在有一个asp.net下拉列表。好吧,它呈现为带有#cityid 的html下拉列表。

我收到有关AJAX请求的成功警报。如何将这些结果填充到我的#city下拉列表中?

试过这个:

 success:
                function (data) {
                var values = eval(data.d);
                var ddl = $("#parkCity");
                $('option', ddl).remove();
                ddl.html(data);
                alert("Cities loaded");
            },

问题答案:

以下是在success回调内部应做的事情:

var $select = $("#parkcity");

$.each(data.d, function(i, el) {
    console.log(el);
    $select.append($("<option />", { text: el }));
});

示例: http
//jsfiddle.net/z2D8f/

或一次附加全部HTML的替代方法,这可能会更快:

var html = $.map(data.d, function(el) {
    return "<option>" + el + "</option>";
});

$("#parkcity").append(html.join(''));

示例: http
//jsfiddle.net/pUhw2/



 类似资料:
  • 问题内容: 我打算根据其他下拉菜单的选择使用AJAX填充下拉框。我遵循了使用位于此处的jQuery的教程-http: //remysharp.com/2007/01/20/auto-populating-select-boxes-using-jquery- ajax/ ,并在选择框名称中更改了选择框ID名称。在脚本中。 当主复选框的值发生更改时,将发送ajax并返回如下: 这与教程代码中返回的JS

  • 问题内容: 我的HTML页面上有2个下拉列表:第一个下拉列表包含数据库列名称,第二个下拉列表将基于该数据库列名称进行填充, 即 我有一个带有字段的表:以下是条目; 因此,我的第一个下拉列表将包含列名称,即“ Degree”和“ City”。 如果我选择“学位”,则第二个下拉列表将填充“ BS”和“ MS”;如果我选择“城市”,则第二个下拉列表应选择“纽约”,“波士顿”和“芝加哥”。 我该如何进行实

  • 问题内容: 我知道在这个问题上有很多问题,但是我仍然不确定该怎么做。 我有一个名为“ CuisineForm”的HTML表单,在用户选择了美食类型之后,AJAX将该表单发送到服务器。AJAX调用工作正常,并且服务器以JSON响应进行响应,其中包含此特定美食的所有服务时间。这些服务时间分为早餐,午餐和晚餐。 这些时间需要以相同的形式填充到3个单独的下拉菜单中。 但我真的不知道如何处理JSON结果以填

  • 问题内容: 我在skelton框架中使用superfish下拉菜单。我也希望它能在手机上使用。默认情况下,它显示下拉菜单项,但将鼠标悬停在其下面的项上。我想以某种方式使其具有将父项推到其下方的方式。有什么办法吗? 问题答案: 这是一个更好的答案 我能够将Superfish的相同HTML转换为响应式抽屉菜单。JS非常简单,整个过程基本上都是使用CSS完成的。检查一下,让我知道你们的想法!

  • 问题内容: 嗨,我想使用Ajax在下拉菜单上管理数据。 数据库字段: 1.id 2.名称 3.部门 myDesgin.php 1.如果我选择了一个下拉菜单,要更改另一个下拉菜单,则取决于使用Ajax选择的值。 2.是否有可用的代码,如果我选择一个下拉菜单,它将转到另一个子窗口并使用 Ajax 以表格式(如报告)显示数据。 提前致谢。 请给我示例代码,因为我是ajax的初学者,如果有人提供带有代码的

  • 问题内容: 我有这样的MySQL表 区域表 … 和学校表 我的注册表中有多个选择(下拉)菜单。区域下拉列表如下所示 我想做的是,获取“区域” ID,然后基于“学校”表中的ID(先前选择的ID)填充学校下拉菜单。我是JS的新手。请帮助我修复它。提前谢谢。 问题答案: