这是一个非常简单的if语句,我怎么试过nummours方法来输入代码。 我要做的是确保“captch_style”的.src为== source_one
html
<img id="captch_style" src="img/captcha/captcha_0.jpg"
width="200" height="60" alt=/>
单独的js文件
<script type=text/javascript>
var source_one="img/captcha/captcha_0.jpg";
if (document.getElementById("captch_style").src === source_one){
inputValue.style.borderColor="#00ff00";
}
else {
inputValue.style.borderColor="#ff0000";
}
<script>
答案 0 :(得分:3)
src
属性通常包含扩展的URL,而不是相对的URL。所以你要比较(例如)http://example.com/img/captcha/captcha_0.jpg
和img/captcha/captcha_0.jpg
,因此它不匹配。
您可以检查它是否以此结尾:
if (document.getElementById("captch_style").src.substr(-source_one.length) === source_one) {
// It does
}
else {
// It doesn't
}
substr
function会返回您调用它的字符串的子字符串。如果你用负索引来调用它,它会从字符串的结尾开始计数并返回,所以“abcdef”.substr(-2)gives you
“ef”`。
或者,您可以获取src
属性而不是属性(.getAttribute("src")
),该属性应该包含HTML中图像的任何内容,但是一些浏览器(只是旧浏览器?)可能会不正确地扩展。 (我不记得它是否与src
属性一起发生,它肯定用于href
元素上的a
。)
另外,正如Shomz在评论中指出的那样,您的JavaScript文件中不得包含script
标记;虽然也许某些浏览器JavaScript引擎可能会容忍它,但我希望这会给你一个语法错误。 JavaScript文件只包含JavaScript代码。 script
标记用于将JavaScript代码块放在HTML文件中。