【发布时间】:2014-02-03 15:12:11
【问题描述】:
我已经为此工作了很长时间。这是关于 IE placeholder 问题。我在这里看到了很多这样的东西,但我只是觉得这个案子有些奇怪。为了解决我的这个问题,我使用了placeholder.js。
所以我的第一个问题是,我有一个<input type="text" id="textbox1" placeholder="My Text"/> 和一个下拉菜单。当我从下拉列表中选择任何内容时,它应该更改它所做的占位符。所以我下拉列表中的选项是让我们a, b, c。如果我首先选择b/c 然后单击搜索按钮(不输入文本框),搜索将起作用并且占位符不会被清除。但是如果我选择a,占位符文本将消失。如果我单击文本框,它将再次显示。之后选择 b/c 将具有相同的行为。
我的第二个问题是提交时没有在搜索框中输入任何内容。占位符文本将被视为文本,然后将成为搜索词。这是一个常见的问题。我不知道为什么我使用的 polyfill 无法解决这个问题,或者我应该做的不仅仅是包括placeholder.js?所以我刚刚在我的 search() 函数中所做的就是这样:
if($.browser.msie && $.browser.version < 10.0){
if($("#textbox").val() == $("#textbox" + s).attr("placeholder")){
text = "";
}
}
但这实际上并不是一个好的解决方案。 有任何想法吗? 这真的会帮助我。 我会很高兴的。
【问题讨论】:
-
始终检查功能支持而不是浏览器及其版本!
-
@WolleVanillebärLutz 请告诉 OP,如何检查
placeholder的功能,尤其是当 OP 包含一个库来为所述属性创建功能时。
标签: javascript jquery internet-explorer placeholder