在页面底部是一行"步骤2"打开手风琴标签。在界面的第一部分是第二个下拉,它显示选择服务。
我试图使用:contains()和.remove()来删除文本中包含单词Phone的选项。这是我的代码,但它似乎没有用。我的错误读到我错过了一个结束但我不知道在哪里。
<select class="ab-formElement ab-select-mobile ab-select-service">
<option value="">Select service</option>
<option value="1">Early Pregnancy Scan</option>
<option value="2">2D Sexing / Gender Scan</option>
<option value="18">Phone Booking Only > Bundle of Joy</option>
</select>
jQuery(document).ready(function($){
$=jQuery;
var option = jQuery('select.ab-select-service option:contains('Phone')');
$(option).remove();
});
更新: 我注意到了别的东西。 我试图对这个插件中的任何元素做的任何事情似乎都行不通。我的jQuery语法和脚本文件中的代码有所不同。
答案 0 :(得分:1)
您在'
内嵌套'
,过早地终止了您的字符串。您需要使用'
转义嵌套的\'
。
var option = jQuery('select.ab-select-service option:contains(\'Phone\')');
答案 1 :(得分:0)
Phone
周围的单引号正在关闭选择器字符串。
尝试将手机周围的报价更改为双引号(&#34;电话&#34;):
var option = jQuery('select.ab-select-service option:contains("Phone")');
或用反斜杠转义单引号:
var option = jQuery('select.ab-select-service option:contains(\'Phone\')');
根据jQuery网站,您也可以完全删除引号:
与属性值选择器一样,括号内的文本:contains()可以写成单词或用引号括起来。文本必须具有匹配的案例才能被选中。
答案 2 :(得分:0)
var option = jQuery('select.ab-select-service option:contains(\'Phone\')');
我的答案非常相似。这里唯一的区别是我有一个工作小提琴https://jsfiddle.net/enge6saa/