我是jQuery的新手,希望有人可以帮助我。
我有一个包含一些可编辑TD的大型HTML表,其中每个TD都有类" editable
"。
现在我需要检查哪些可编辑的TD包含文本,然后创建一个包含相应TD名称和文字的数组。
到目前为止,我有以下哪些文本应该没问题,但我不确定如何在数组中获取相应的名称。
我的jQuery:
var edited = [],
editedName;
$('.editable').not('.default').each(function(){
editedName = $(this).attr('name)';
edited.push( $.trim($(this).text()) );
});
有人可以帮我这个吗?
非常感谢蒂姆。
答案 0 :(得分:1)
您可以尝试这样:
var edited = [],
$('.editable').not('.default').each(function(){
var editedName = $(this).attr('name)';
var editedText = $.trim($(this).text());
var editedItem = {};
editedItem.Name = editedName;
editedItem.Text = editedText;
edited.push(editedItem);
});
然后,如果你想从编辑过的数组中读取值,你可以这样做:
$.each(edited, function(i, editedItem){
var $thisEditedItemName = editedItem.Name;
var $thisEditedItemText = editedItem.Text;
});
答案 1 :(得分:0)
你应该推送一个对象:
var edited = [];
$('.editable').not('.default').each(function(){
edited.push( {
text: $.trim($(this).text()),
name: $(this).attr('name')
} );
});
您还可以使用map
:
var edited = $('.editable')
.not('.default')
.map(function(){
return {
text: $.trim($(this).text()),
name: $(this).attr('name')
};
})
.get()
;