Jquery 选择获取数组对象值



我正在寻找可以轻松快速地迭代的东西,或者使用 jQuery 从 JavaScript 数组对象添加的最佳方法,并且可以使用 jQuery提交到 JavaScript 数组对象

这是我所做的:

var view = [{id:123, name:john, type:5},{id:234, name:adam, type:4},{id:456, name:max, type:3}]
var dis = $.map(view, function (item) {
var opt = $('<option/>', { selected:'selected', text: item.name})
return opt
});
$(".select-js-view").append(dis);

选择的结果是:

var selectedValues = $('.select-js-view').val();
console.log(selectedValues);
selectedValues = [john,adam]

所以我的问题是,我如何获取像(视图(这样的数组对象值? 或者也许有人可以给我一个提示。

首先:你必须把名字放在"符号中。

现在,您可以尝试一下。

var view = [{id:123, name:"john", type:5},{id:234, name:"adam", type:4},{id:456, name:"max", type:3}]
var dis = $.map(view, function (item) {
var opt = $('<option/>', { selected:'selected', text: item.name});
opt[0].info = item;
return opt
});
$(".select-js-view").append(dis);

$(".select-js-view").change(function(){
console.log($(this.options).filter(":selected")[0].info);
});

//If you want to get all (similar view var):
function GetAll(){
var r=[];
$(".select-js-view option").each(function(i, o){
r.push(o.info);
});
return r;
}
console.log(GetAll());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<b style='color: #090'>change me:</b> 
<select class="select-js-view"></select>

最新更新