使用AJAX修改HTML-select元素的值

时间:2012-08-23 06:06:38

标签: html jquery html-select

在我的页面中,将有2个选择框[项目和子项目]

<select id="item" name="item">
 <option value="1">Desktop</option>
 <option value="2">Laptop</option>
</select>


<select id="sub_item" name="sub_item">
</select>

当用户更改项目选择控件时,事件将使用jQuery将选定值发送到服务器,服务器页面将输出类似这样的内容

  

DELL,39000
  HP,32000

jQuery应该将这些值添加到子项选择框中,以便更改为

<select id="sub_item" name="sub_item">
 <option value="39000">Dell</option>
 <option value="32000">HP</option>
</select>

问题:我无法编码如何添加/重置子项的选择控件

我没有任何代码要分享。如果你想要我的SQL或JAVA代码,我可以发布它,但我认为后端与修改子项的值的jQuery无关

2 个答案:

答案 0 :(得分:1)

假设这是输入,只是一个普通的字符串

您的服务器将使用字符串DELL,39000 # HP,32000进行响应(此处#代表第二项。)

将其分配给javascript中的变量

var data = response.split( "#"); // Splits the items

for( i=0; i < data.length; i++){
  $('#sub_item').append( '<option value='+data[i].split(",")[0]+'>'+data[i].split(",")[1]+'</option>');
}

这将使用服务器

的响应将数据附加到sub_item选择框

清除droddown

$'#sub_item').html('');

答案 1 :(得分:1)

$.get('URL',function(data){
  //data should be DELL,39000 osv
  var items = data.split("\n");
  items.forEach(function(item){
    item = item.split(',');
    var option = $("<option></option>").text(item[0]).val(item[1]);
    $("sub_item").append(option);
  });
});

将“网址”更改为您的网址。

未经测试,但应该可以使用。