在JQuery中使用multi-select选项并赋值时从JSON获取数据

在JQuery中使用multi-select选项并赋值时从JSON获取数据,jquery,json,Jquery,Json,希望有人能帮助我阅读JSON,我得到一个错误。 我有一个选择多个选项。该值必须是多个这样的参数 <select id="my-select" name="character" multiple="multiple"> <option value='{"id":"#final.id#","text":"#final.name#"}'>#final.name# </option> </select> 不知道为什么这是一个问题,但

希望有人能帮助我阅读JSON,我得到一个错误。 我有一个选择多个选项。该值必须是多个这样的参数

 <select id="my-select" name="character" multiple="multiple">
    <option value='{"id":"#final.id#","text":"#final.name#"}'>#final.name# 
    </option>
 </select>
不知道为什么这是一个问题,但它是。当我选择一个选项时,控制台中的输出如下所示

key is id
value is 41
key is text
value is Apples
我用这个代码来显示它

var appleList  = $('select#my-select').val();
var finalapple = JSON.parse(appleList);


$.each(finalapple,function(i,v){
    console.log("key is " + i)
    console.log("value is " + v)
})
我想写一个for循环

for(var i=0;i<trustList.length;i++)
{ }

您需要添加一个onchange事件,以了解用户何时实际选择某个内容。现在,您在页面加载时获得my select的值,但没有选择任何值,因此appleList为null

onchange事件还可以帮助您循环选择的值$this.val这指的是select option元素,jQuery足够聪明,可以通过.val函数获得所选的值

$selectmy-select.onchange,函数{ $。每个$this.val、functioni、v{ console.logkey为+i; console.logvalue为+v; //将json中的选项值解析为对象 var obj=JSON.parsev; console.logvalue id为+obj.id; console.logvalue文本为+obj.text var mystring=I like+obj.text+,id=+obj.id; console.logmystring; } }; 苹果 梨
实际上,OP是正确获取值;格式有点难说,所以第一段是不相关的。剩下的答案很好!谢谢这解决了问题。有几个其他问题,但设法解决了,现在一切都正常,没有更多的错误。
for(var i=0;i<trustList.length;i++)
{ }
var mystring = ' I like' + 'text'+ 'which have the id =' + 'id'