Jquery 在onselect事件上使用select标记和ajax进行动态下拉
我正在开发一个web应用程序。我有一个类别的下拉列表。在select事件中,类别被发送到服务器,并以属于该类别的子类别的JSON格式获取数据。基于此,我创建了动态下拉选择列表。但问题是,当我在drop down1中选择类别时,属于该类别的所有子类别都会出现在drop downsingle选项标记的单行中 我的成功下拉列表ajax代码Jquery 在onselect事件上使用select标记和ajax进行动态下拉,jquery,ajax,html,Jquery,Ajax,Html,我正在开发一个web应用程序。我有一个类别的下拉列表。在select事件中,类别被发送到服务器,并以属于该类别的子类别的JSON格式获取数据。基于此,我创建了动态下拉选择列表。但问题是,当我在drop down1中选择类别时,属于该类别的所有子类别都会出现在drop downsingle选项标记的单行中 我的成功下拉列表ajax代码 success: function(data) { console.log(data); $.ea
success: function(data)
{
console.log(data);
$.each(data,function(index, store) {
console.log(store);
$.each(store, function(key,value){
if(key === "subcatname"){
options.append($("<option />").val(value).text(value));
};
});
});
},
一个比一个低
我的HTML代码是
<select id="dynamic_select_delete" style="height: 30px;">
<option id="options">Select Subcategory </option>
</select>
我在ajax中缺少什么?
谢谢根据您在评论中提供的信息,这应该是正确的方式
options.parent().append($("<option />").val(value).text(value));
或
现在您正在附加到选项select子元素,但您应该附加到select元素,即其父元素。变量选项在哪里定义?是选择对象还是其选项对象?选项是第一个选项标记的id,其值id select子类别已在选择标记中声明。更新了问题中的代码谢谢,但还有一件事,当我将下拉列表从“硬件”类别更改为“软件”类别时,子类别中的选项仍然保留,而“软件”子类别中的选项添加了附加选项。如何清除第一个子类别选项在附加子类别$dynamic\u select\u delete.findoption.notoptions.remove之前执行此操作通过添加此语句,子类别的内容会发生更改,但我只能看到子类别下拉列表中的最后一个选项,就像在硬件类别中更改鼠标一样。我希望所有选项都来自硬件,在循环之前执行此语句,而不是在循环中执行是的,我得到了预期的结果,在循环之前添加,非常感谢
options.parent().append($("<option />").val(value).text(value));
$("<option />").val(value).text(value).insertAfter(options);