Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Greasemonkey:为什么这个if语句总是返回true?_Javascript_Jquery_If Statement_Greasemonkey - Fatal编程技术网

Javascript Greasemonkey:为什么这个if语句总是返回true?

Javascript Greasemonkey:为什么这个if语句总是返回true?,javascript,jquery,if-statement,greasemonkey,Javascript,Jquery,If Statement,Greasemonkey,这让我很困惑。。。我正在ajax页面上使用WaitForkEyelments。。。我有一个if语句,只有当有一个值为“Accept Offer”的按钮时,才会弹出一个警报。不幸的是,当仅有的两个按钮的值为“继续探索”和“投资”时,就会弹出警报。我有一种感觉,它与真/假的东西有关,但我不明白为什么getElementById应该像这样工作,但我的选择器没有。如果我添加了一个===something,这确实有效,但我想知道为什么它不能这样工作 因此,当有两个按钮的值分别为“继续探索”和“投资”时,我

这让我很困惑。。。我正在ajax页面上使用WaitForkEyelments。。。我有一个if语句,只有当有一个值为“Accept Offer”的按钮时,才会弹出一个警报。不幸的是,当仅有的两个按钮的值为“继续探索”和“投资”时,就会弹出警报。我有一种感觉,它与真/假的东西有关,但我不明白为什么getElementById应该像这样工作,但我的选择器没有。如果我添加了一个
===something
,这确实有效,但我想知道为什么它不能这样工作

因此,当有两个按钮的值分别为“继续探索”和“投资”时,我会收到一个提示“是”,然后是一个提示“投资”。当没有值为“接受报价”的按钮时,它不应该运行“else”吗

你应该这样做

if ($( '.adv-action[value*="Accept Offer"]').length!=0){

    alert("Yes!")
    alert($('.adv-action').val())

   }

else{
    alert("no")
    alert($('.adv-action').val())
}
$('.adv action[value*=“Accept Offer”]')
返回一个数组,数组将始终等于true,因此通过将其长度等于0来检查它是否确实包含任何元素。

您应该这样做

if ($( '.adv-action[value*="Accept Offer"]').length!=0){

    alert("Yes!")
    alert($('.adv-action').val())

   }

else{
    alert("no")
    alert($('.adv-action').val())
}

$('.adv action[value*=“Accept Offer”]')
返回一个数组,数组将始终等于true,因此通过将其长度等于0来检查它是否确实包含任何元素。

我是个白痴!英雄联盟这就是为什么去学校学习基础知识会有帮助。。。我写了很棒的剧本,但当我碰到基本知识的东西时,我就绊倒了。。。它可以通过使用-$('.adv action[value*=“Accept Offer”]')来修复(一旦你说了数组)。val()通常我会意识到它应该与警报匹配,但在选择器中使用“value”会使我感到不适。。。谢谢很高兴这有帮助。。考虑投票吧,把它标记为正确答案。呵呵!这有助于其他人找到正确答案,也为我赢得了一些声誉!:)再次检查。。。如果我使用[name=]而不是[value*=]也返回数组?是的,返回数组的是$(elem)。。不管怎么说,我是个白痴!英雄联盟这就是为什么去学校学习基础知识会有帮助。。。我写了很棒的剧本,但当我碰到基本知识的东西时,我就绊倒了。。。它可以通过使用-$('.adv action[value*=“Accept Offer”]')来修复(一旦你说了数组)。val()通常我会意识到它应该与警报匹配,但在选择器中使用“value”会使我感到不适。。。谢谢很高兴这有帮助。。考虑投票吧,把它标记为正确答案。呵呵!这有助于其他人找到正确答案,也为我赢得了一些声誉!:)再次检查。。。如果我使用[name=]而不是[value*=]也返回数组?是的,返回数组的是$(elem)。。不管选择器是什么