我有很多送货方式,我有代码来计算它们。但是,我需要一种方法来替换单词的所有实例(也就是删除),所以我只剩下数字(价格)。
<select name="ShippingSpeedChoice" onchange="this.form.submit();">
<option value="103">In-store Pickup </option>
<option value="701">UPS Ground $9.90 </option>
<option value="703">UPS 3Day Select® $30.88 </option>
</select>
所以我想从选项值701中删除所有内容,所以我只剩下9.90。我也想要为值703发生同样的事情,所以我只剩下30.88,而不是为每个编写一个函数。目前我只有一个选项值701的功能,但我希望它是动态的,它可以完成..可能与正则表达式,我不擅长?
$("option:selected").each(function () {
var isthePrice = $(this).text().replace("UPS Ground $", ""); }
答案 0 :(得分:2)
您要替换所有内容(.
表示任何字符,*
表示“匹配零次或多次”)后跟$
(但在正则表达式中$
是一个特殊字符,所以你必须使用\
)来逃避它:
var isthePrice = $(this).text().replace(/.*\$/, '');
答案 1 :(得分:0)
这应该适合你:
$("option:selected").each(function () {
var isthePrice = $(this).text().replace(/^[^$]*/, "");
}