我有这个HTML。
<div id="restmenu" class="restMenu">
<ul>
<section id="LocationX" class="ulseWrap lielement">
<div class="intit">LocationX<span class="inDelete"></span></div>
<ul class="restListings">
<div class="inner-intit">
<sub class="sub">Your Favorite Restaurant</sub><br>
<li>
<h6>Swaghat</h6>
<p>MadhaPur , Near Policstation,Hyderabad</p>
<span class="inDelete inDeleteSub"></span>
</li>
</div>
<input type="button" location="LocationX" name="btn1" class="btn btn-success addNewRestaurant" value="LocationX">
</ul>
</section>
<section id="SoftSol" class="ulseWrap lielement">
<div class="intit">SoftSol<span class="inDelete"></span></div>
<ul class="restListings"><input type="button" location="LocationX" name="btn1" class="btn btn-success addNewRestaurant" value="LocationX"></ul>
</section>
</ul>
</div>
我需要删除SoftSol位置中的按钮
我试过这种方式
var locationname = 'SoftSol';
$("#restmenu").find('section').not("#"+locationname).find('.addNewRestaurant').remove();
但它没有移除Button。
有人可以告诉我这个问题吗?
我仍有问题,我无法删除其他部分中出现的按钮名称 addNewRestaurant
这是我的代码
function showRestaurantDetailsByLocation(responseeee,locationname)
{
var ulhtml = $('<ul class="restListings"></ul>');
var divhtml = $('<div class="inner-intit"><sub class="sub">Your Favorite Restaurant</sub></div>');
divhtml.append('<br>');
for(var i=0;i<responseeee.length;i++)
{
divhtml.append('<li><h6>'+responseeee[i].name+'</h6><p>'+responseeee[i].address+'</p><span class="inDelete inDeleteSub"></span></li>');
}
ulhtml.append(divhtml);
$('.restListings').empty();
$("#"+locationname).append(ulhtml);
$("#restmenu").not("#"+locationname).find('.addNewRestaurant').remove();
var $newbutton= $('<input/>').attr({ type: 'button', location:locationname , name:'btn1', class:'btn btn-success addNewRestaurant',value:locationname});
$('.restListings').append($newbutton);
$(".restListings").show();
$("#restmenu").show();
}
答案 0 :(得分:0)
要删除SoftSol
位置中的按钮,请执行以下操作:
$("#restmenu").find("#"+locationname).find('.addNewRestaurant').remove();
目前您正在使用not("#"+locationname)
,因此它正在移除其他按钮,它将删除addNewRestaurant
元素中属于restmenu
类的所有其他按钮不在id=SoftSol
的元素中。
<强> JS Fiddle Demo 强>
答案 1 :(得分:0)
尝试
var locationname = 'SoftSol';
$("#restmenu").find("#"+locationname).find('.addNewRestaurant').remove();
工作Demo