如何解决警报未在javascript中显示getElementbyId
|function showPrice(){
var a = document.getElementById(\"product_container15\");
if (a == \"$1,599.00\"){
alert(a);
}
else {
alert(\"$1,499.00\");
}
}
这始终会返还$ 1,499.00。我知道我做错了,或者也许有一种完全不同的方式来编写此代码。如果ID为\“ product_container15 \”,我希望警报显示$ 1,599.00。如果不是,则警报将显示$ 1,499.00。有人可以告诉我这是怎么做的吗?谢谢!
解决方法
在您的情况下,它是html对象,因此它永远不会是\“ $ 1,599.00 \”,也许您应该这样尝试
function showPrice(){
var a = document.getElementById(\"product_container15\").value;
if (a == \"$1,599.00\"){
alert(a);
}
else {
alert(\"$1,499.00\");
}
}
, a
是元素-是否需要内容?
如果这是HTML标记,请尝试textContent
或(对于IEinnerText
):
alert(a.textContent);
或等效项(对于文本节点)nodeValue
:
alert(a.nodeValue);
如果a
是表单元素(input
,textarea
等...),请使用value
属性:
alert(a.value);
, 那是因为a
包含Element
。要获得该元素的html
,请执行a.innerHtml
或a.innerText
。
var a = document.getElementById(\"product_container15\").innerText;
if (a == \"$1,599.00\"){
alert(a);
}
else {
alert(\"$1,499.00\");
}
, 我认为Senad和Mohamed都是正确的,但是他们都假设了两种不同的观点。 Sena假设product_container15是输入,而Mohamed假设它是类似\“ \”的容器元素。
因此,如果product_container15是一个“ input”元素,则仅值2美分:
var a = document.getElementById(\"product_container15\").value;
if (a == \"$1,499.00\");
}
}
如果它是div,span或任何其他元素,则:
var a = document.getElementById(\"product_container15\").innerText;
if (a == \"$1,499.00\");
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。