我在javascript中编写了一个函数,它接受<tr>
调用ajax的title属性,然后在一些操作后从它们中检索一些title属性。我希望删除那些<tr>
行
function currentTicketStatus() {
var ids = '';
$('tbody tr[title]').each(function() {
ids += ((ids == '') ? '' : ',') + $(this).attr('title');
});
$.ajax({
url: 'ajaxExecute.aspx?Fn=CTS',
type: 'POST',
context: document.body,
cache: false,
data: 'Tickets=' + ids,
success: function(response) {
if (response != '') {
if (response.substr(0, 5) != 'ERROR') {
var sTickets = response.split('|');
sTickets.each(function() {
$(this).parent().parent().remove();
});
}
}
}
});
}
示例:在ajax调用ids="100,101,102,103,104"
之后ajax调用sTickets="101|102"
时。现在删除具有sTickets属性的那些行
HTML(不完全)
<tbody>
<tr title="100"> some data part </tr>
<tr title="101"> some data part </tr>
<tr title="102"> some data part </tr>
<tr title="103"> some data part </tr>
</tbody>
答案 0 :(得分:0)
在您的成功函数中尝试此代码:
success: function(response) {
if (response != '') {
if (response.substr(0, 5) != 'ERROR') {
var sTickets = response.split('|');
$.each(function(i,v){ $('tr[title=' + v + ']') }).remove();
}
}
说明:
1-属性选择DOM元素:
$('[ATTRIBUTE=VALUE]') // $('[title="myTitle"]')
您可以在此链接中找到更多信息http://api.jquery.com/attribute-equals-selector/
2 - $ .ete迭代
可用于无缝迭代对象和数组。
答案 1 :(得分:0)
this
中的each
是“标题”(字符串),您需要DOM元素(<tr>
)而不是
sTickets.each(function() {
$('tbody tr[title="'+ this +'"]').remove();
});