检查文字是否存在,并在javascript

时间:2016-04-15 12:17:30

标签: javascript php jquery html

我想检查文本是否存在并将其删除。我想在我的代码中查看文本无名称是否存在,如果此文本存在,那么我需要删除或隐藏这些元素:

<dt>Font</dt>
<dd>no font selected </dd>
<dt>Name</dt>
<dd>--------</dd> 

与另一个几乎相同,如果名称+日期存在,那么我需要删除或隐藏:

<dt>Color</dt>
<dd>------- </dd>

我的HTML是:

<table id="shopping-cart-table" class="data-table cart-table">
    <tbody>
        <tr class="odd">
            <td>
                <dl class="item-options">
                    <dt>Radio test</dt>
                    <dd>Without Name </dd>
                    <dt>Font</dt>
                    <dd>no font selected </dd>
                    <dt>Name</dt>
                    <dd>--------</dd>
                </dl>
            </td>
        </tr>

        <tr class="even">
            <td>
                <dl class="item-options">
                    <dt>Radio test</dt>
                    <dd>With name + date </dd>
                    <dt>Font</dt>
                    <dd>Disney Print </dd>
                    <dt>Name</dt>
                    <dd>nametest </dd>
                    <dt>Color</dt>
                    <dd>------- </dd>
                </dl>
            </td>
        </tr>
    </tbody>
</table>

<script type="text/javascript">
 if (jQuery('.item-options dd:contains("Without Name")').length > 0)
 {
 jQuery('.item-options dt:contains("Name")').html('');    
 }
    });
</script>

1 个答案:

答案 0 :(得分:2)

脚本标记中存在语法错误,因为给出了不必要的结束括号。所以做吧。

<script type="text/javascript">
jQuery( document ).ready(function() {
 if (jQuery('.item-options dd:contains("Without Name")').length > 0)
 {
    var parent = $('.item-options dd:contains("Without Name")').parent('dl');
    jQuery(parent).find('dt:contains("Name")').html('');    
 }
});
</script>