Javascript jQuery返回文本,但函数不更改值

Javascript jQuery返回文本,但函数不更改值,javascript,jquery,Javascript,Jquery,正如您在图像中看到的,上面写着+10.00美元(如下红色所示)-这一位正是我试图删除的。 靛蓝色区域为: 红色战神是: 样例按钮包装为: 我试图用这段代码删除它,但没有成功 <script type="text/javascript"> // <![CDATA[ jQuery(document).ready(function(e) { checkswatches(); jQuery("span.swatch-label").c

正如您在图像中看到的,上面写着+10.00美元(如下红色所示)-这一位正是我试图删除的。

靛蓝色区域为:

红色战神是:

样例按钮包装为:

我试图用这段代码删除它,但没有成功

<script type="text/javascript">
    // <![CDATA[
    jQuery(document).ready(function(e) {
        checkswatches();

        jQuery("span.swatch-label").click(function(){
            checkswatches();
        });
    });

    function checkswatches(){
      jQuery("span.select-label").each(function(){
        var optiontext = jQuery(this).text();
        var addsignpos = optiontext.indexOf('+');
        var subtractsignpos = optiontext.indexOf('-');
        if(addsignpos>0){
            var result = optiontext.substring(0,addsignpos-1);
            jQuery(this).html(result);
        }

        if(subtractsignpos>0){
            var result = optiontext.substring(0,subtractsignpos-1);
            jQuery(this).html(result);
        }
      });
    }
    // ]]>
</script>

// 0){
var结果=optiontext.子字符串(0,addsignpos-1);
jQuery(this).html(result);
}
如果(减去符号位置>0){
var结果=optiontext.子字符串(0,减去符号pos-1);
jQuery(this).html(result);
}
});
}
// ]]>
当我运行上述功能时,上图中显示的价格上涨仍然显示。

任何建议都将不胜感激

这应该有效:

function checkswatches(){
    jQuery("span.select-label").each(function(){
        jQuery(this).text(
          jQuery(this).text().replace(/[+-]\$[0-9\.]+/g, "")
        );
    });
};

var optiontext=jQuery(this.text()工作?
checkswatches
没有
return
语句。不确定您希望函数返回什么。。。您甚至没有对函数的返回值执行任何操作。或者你说的是另一种功能
jQuery(“样例标签”)
使用了错误的选择器。顺便说一句,当函数运行时返回未定义的
是什么意思?什么函数?请记住
.text()
永远不会返回未定义的
当运行
jQuery(“span.select label”).text()
单独返回第一个匹配元素的文本。在
内部运行时,each()
将获取每个元素的文本(第一个元素与
jQuery(“span.select label”).text()相同,但其余元素不相同)。链接是否为
jQuery(“span.select label”)
在文本被其他方法更改之前运行?原因是您不只是删除“+“在该代码中?函数正在工作。如果在调试器中单步执行,则会看到价格消失。然后,它会被一些对鼠标悬停在按钮上做出反应的东西添加回来。谢谢,但不幸的是,这不起作用。当嵌入到页面中时,会发生注释。当在控制台中运行时,它返回未定义的。@A为什么在没有
return
语句的情况下,您仍然希望它返回一些东西?为什么返回值很重要,函数只是用来修改DOM。@Barmar很抱歉,我对控制台中的返回感到困惑。但是,此代码不会更改页面上的文本。我在示例页面上找不到这些元素