将innerHTML值与javascript中的字符串变量进行比较

时间:2010-12-06 16:43:36

标签: javascript innerhtml

function Open() {

  var cc = document.getElementById('FName');

  if ('Newfile.rtf' == cc.innerHTML) 
  {
     alert("New File");
  } //close If NewFile.rtf
  else {
     alert("Not new file");
  }
}//close Open()   

这里我在页面上的id =“FName”的元素中有字符串“NewFile.rtf”。当FName中包含“Newfile.rtf”时,它仍然会转到函数的else部分而不是转到part。我尝试了在if条件下编写compare语句的不同方法,没有运气。如果有人可以帮助解决这个问题,请感谢您的帮助。

谢谢。

4 个答案:

答案 0 :(得分:1)

最简单的解释是你的cc.innerHTML调用没有返回你认为它返回的内容。你为什么不用console.log或者调试。

添加类似

的内容
var innerhtml = cc.innerHTML;
console.log("innerHTML = " + innerhtml) // wont work in IE.
在if语句之前

答案 1 :(得分:0)

但这个元素的类型是什么?如果它是关于输入文本类型..你不能使用innerHTML,但你会使用值。

答案 2 :(得分:0)

尝试使用正则表达式查找您的文件名,同时检查您搜索的文字是否不是另一个DOM元素,左右空格,您应该使用Google Chrome来调试Javascript代码:

var html = document.getElementById('FName').innerHTML; 
if( html.search("Newfile.rtf") != -1) { /*found*/ }
else { /*not found*/ }

答案 3 :(得分:0)

使用innerText来获取

function Open() {

    var cc = document.getElementById('FName');

    if ('Newfile.rtf' == cc.innerText)
    {
        alert("New File");
    } //close If NewFile.rtf
    else {
        //enter code here
        alert("Not new file");
    }
}