我正在遍历html表的主体,我想捕获选择的 ( td )的位置,这发生在 jquery click event 中。我有以下内容:
//creo el objeto
var objetoSelects = new Object();
$('#vistaPre tbody tr').each(function (index) {
$(this).find("td").each(function(i, el) {
// .selectOptions son selects que tengo en un td de la tabla
$('.selectOptions').find(':selected').each(function(j, el) {
$this = $(this).val();
if ($this != '') {
// intento crear las posiciones del objeto
objetoSelects.$this = j;
objetoSelects.selects = $this;
}
});
// salgo del each
return false;
});
// salgo del each
return false;
});
我的意图是创建一个像这样的对象:
// $this es el valor del select ejemplo ('item1')
// j es el contador en este caso la posición actual del <td>
// selects es el valor que le deseo dar a mi otro dato (creo que no esta bien)
objetoSelects(itemx = x, 'selects' = itemx);
我找不到办法。
更新
根据答案,我找到了一种方法,下面是我解决问题的方法
// cree arrays para guardar la posición del <td> y el valor del select
var arraySelects = [];
var arrayPosition = [];
$('#vistaPre tbody tr').each(function (index2) {
$(this).find("td").each(function(i, el) {
//
$('.selectOptions').find(':selected').each(function(j, el) {
$this = $(this).val();
if ($this != '') {
//agrego los datos correspondientes
arrayPosition.push(j);
arraySelects.push($this);
}
});
return false;
});
return false;
});
// creo el objeto y le asigno los valores
var datoSelect = { 'position': arrayPosition, 'selects': arraySelects};
艾伦,这是你正在寻找的一个例子。没有外部库的本机 JS 脚本。
我不太明白你的问题。
您创建了一个对象,但从名称中我假设您想要一个数组?
如果你肯定想要一个对象,那么你可以这样做:
让我们记住,
arraySelects
您将它创建为一个对象,在完成该调用后,您可以查询将其arraySelects['key']
替换key
为您在保存它时给它的名称。您可以使用创建对象的语法直接赋值:
objetoSelects = {"items": x, "select": itemx}