我有一个具有两个属性的对象数组,firstName
并且lastName
. 单击按钮时,我想将下拉列表绑定到页面。目前我有:
$(document).ready(function ()
{
var obj1 =
{
firstName: "john",
lastName: "smith"
};
var obj2 =
{
firstName: "jane",
lastName: "doe"
}
var objArray = [];
objArray.push(obj1);
objArray.push(obj2);
$('#btnSubmit').click(function ()
{
makeDropDown(objArray);
});
function makeDropDown(array)
{
var $sel = $('<select/>');
for (var i = 0; i < array.length; i++)
{
for (var prop in array[i])
{
if(prop=='firstName')
var $option = $('<option/>').val(array[i][prop]).html(array[i][prop]).appendTo($sel);
}
}
$sel.appendTo('body');
}
});
这行得通,但我情不自禁,但有更好的方法。我想我可以让函数在 if 语句中采用另一个参数(其中 firstName),但这对我来说也不合适。这样做的好的OO方式是什么?