如果item属性等于特定字符串,我试图将变量设置为0,否则将变量设置为1,但我无法使其工作。
我的代码在我的javascript函数中是这样的:
var variable;
if ($(this).attr("attribute", "string"))
variable=0;
else
variable=1;
由于某种原因,即使item属性不等于特定字符串,变量也始终设置为0。
我做错了什么?
答案 0 :(得分:3)
你必须改为使用它:
var variable;
if ($(this).attr("attribute") == "string")
variable=0;
else
variable=1;
$(this).attr("attribute", "string")
将属性attribute
设置为string
,不会测试attribute
是否等于string
。
请参阅attr(attributeName,value)
方法文档。
答案 1 :(得分:1)
尝试 -
var variable;
if ($(this).attr("attribute") == "string")
variable=0;
else
variable=1;
这会将属性"attribute"
的值与值"string"
进行比较。您目前正在做的是将属性"attribute"
的值设置为值"string"
。我怀疑这个函数会返回一个“truthy”值,因此variable
总是设置为0。
答案 2 :(得分:1)
您在if
中设置字符串if( $(this).attr("attribute", "string") ){
您需要阅读并比较
if( $(this).attr("attribute") === "string") ){
答案 3 :(得分:0)
尝试$(this[attribute="string"])
。