为什么这两个字符串不一样?

Why aren't these two strings the same?

我正在尝试编写一些 javascript 并使用 document.getElementById("ct100_ContentPlaceHolder1_search"); 获取一些元素,但由于某种原因找不到它。它总是 return null。

在考虑是我使用了双引号还是单引号之后,我在文档中找到了元素的 id,并将 id 打印到文本框。我copy/pasted把文字写到记事本然后决定写下这一点代码

var id = e.target.id;

if (id == "ctl00_ContentPlaceHolder1_search") {  <-- Copied/pasted from notepad. Returns true
    var foo6 = document.getElementById("ctl00_ContentPlaceHolder1_search");
}
if (id == "ct100_ContentPlaceHolder1_search") { <-- Typed out. Returns false
    var foo5 = document.getElementById("ct100_ContentPlaceHolder1_search");
}

正在使用 ASP.NET 构建页面(如果有的话)。那里面发生了什么?我一点头绪都没有。

这是我制作的 regexr 以显示两个字符串不相同。正则表达式是记事本中的 copied/pasted。说明'1'是不一样的,那是什么'1'呢?

第一个字符串在ctl中有一个小写的L。

第二个在 ct1 中的编号为 1。