拥有以下HTML,使用JQuery我想删除销售价格:如何删除它,我尝试使用以下Jquery但它不起作用
JQUERY代码:
$('Sale Price:').detach();
HTML代码:
<b class="cartvalB">
<font class="pricecolor colors_productprice">
Sale Price:
<span class="cartvalB_span" itemprop="price">$175.00</span>
</font>
</b>
答案 0 :(得分:0)
这可以通过稍微更改标记并使用javascript来实现。我相信你也可以用jQuery做到这一点,但我并不是那么熟悉。首先,您需要将文本放在可以通过javascript访问的元素中。
<div id="myDiv" class="cartvalB">
Sale Price:
</div>
如果你在ASP.Net中这样做,你可以使用标签控件。
现在,您想要在javascript中访问div:
function myScript(){
var myDiv = document.getElementById('myDiv')
myDiv.innerText =''
}
这会更改div的内部文本。您还可以更改可见性,样式等.Div与所有html元素一样,具有可通过DOM访问的一整套属性。在这里查看它们:http://msdn.microsoft.com/en-us/library/ie/ms535240%28v=vs.85%29.aspx
我只是自由交给了这个,所以它没有经过测试,但应该稍微轻推一下。如果没有,请告诉我。
答案 1 :(得分:0)
你无法像这样查询文字。您必须改为选择父元素,循环内容,并查找(并删除)您需要的文本节点。参考How do I select text nodes with jQuery?和Remove text with jQuery
示例:
var textContent = 'textContent' in document.body ? 'textContent' : 'innerText';
$('.colors_productprice').contents().filter(function()
{
if(this.nodeType == 3)
{
var content = this[textContent];
if(content == 'Sale Price:') return true; // found just this text node... now remove it
}
return false;
}).remove();
或者,您可以操纵内部HTML,例如:
var html = $('.colors_productprice').html();
html = html.replace('Sale Price:', '');
$('.colors_productprice').html(html);
如果你有任何事件绑定到colors_productprice
的任何子元素,这可能会产生分歧,但如果没有,那么这应该是一个安全而简单的解决方案。
答案 2 :(得分:-1)
<script>
alert("HI...");
$(document).ready(function(){
alert($('span')[0].innerHTML);
$('span')[0].innerHTML = "";
alert($('span')[0].innerHTML);
});
</script>
</head>
<body>
<b class="cartvalB">
<font class="pricecolor colors_productprice">
<span>Sale Price:</span>
<span class="cartvalB_span" itemprop="price">$175.00</span>
</font>
</b>
</body>
答案 3 :(得分:-1)
var span = $('.cartvalB .cartvalB_span');
$('.cartvalB font').empty().append(span);
应该做的伎俩