javascript - jquery 目标多个标题属性

标签 javascript jquery

我有以下代码,可以正常工作。

    <div id="testdiv"></div>
    <table>
        <tr>
            <td class="test" title="two">2</td>
            <td class="test" title="one">1</td>
            <td class="test" title="three">3</td>
        </tr>
    </table>

    <script>
        if(jQuery("td[title='three']").length == 0) {
          jQuery('#testdiv').append('<p>no td</p>')
        }
        else
        {
          jQuery('#testdiv').append('<p>yes td</p>')
        }
    </script>

但是我想说的是标题一或三是否存在。所以我尝试将脚本的第一行编辑为如下所示。

if(jQuery("td[title='three']").length == 0 || jQuery("td[title='one']").length == 0) {

但出于某种原因,似乎必须同时存在三个和一个才能使我的陈述成立?

但是如果我替换||与 && 它的工作原理是我想要的吗?为什么 && 的工作方式像 ||在这里还是我在这里遗漏了一些东西?

See fiddle例如

最佳答案

|| 是 OR,&& 是 AND,因此如果您需要满足两个条件,则必须使用 &&,但你可以让它更短一些。为了方便起见,我使用 $,但您可以替换为 jQuery:

var exists = $('td[title=one],td[title=three]').length;
$('#testdiv').append('<p>'+ (exists ? 'yes' : 'no') +' td</p>');

关于javascript - jquery 目标多个标题属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14574158/

相关文章:

javascript - 检查文本框是否为空,然后输入属性

javascript - 如果为空则更改输入样式

javascript - 在 Cordova 应用程序中捏合以缩放/缩放 iframe

javascript - 无法连接到我的 VPS 上的 node.js 服务器

javascript - 在字符串的变量中添加运算符

jQuery:进度条内的中心文本

javascript - 解析 html 元素中的 data-i18n 属性

javascript - 从 jQuery 中作为属性的函数访问数据属性

javascript - 如何删除动态生成的 DIV 的 lastchild 元素并将 html 作为字符串返回

jquery - jGrowl:如何将我的界面一次限制为一条消息?