IE-9将占位符值作为值

时间:2014-09-22 12:25:48

标签: javascript jquery html internet-explorer

我的HTML为:

<input id="SLOCriteriaOtherText" name="SLOCriteriaOtherText" style="width: 100%;" type="text" data-role="autocomplete" placeholder="Enter name for 'other' metric..." class="k-input" autocomplete="off" role="textbox" aria-haspopup="true" aria-disabled="false" aria-readonly="false" aria-owns="SLOCriteriaOtherText_listbox" aria-autocomplete="list">

我只是想验证它是否有空白文本框检查。

上面的文本框的占位符为:

Enter name for 'other' metric...

我已经对空白文本框检查进行了验证:

  if ($("#SLOCriteriaOtherText").val() == "") {

                alertMessageText += "Please enter Other criteria text. \n";
            }

在Chrome上运行正常。

但无法在Internet Explorer上运行。

当我从Internet Explorer上警告SLOCriteriaOtherText的值时,它显示了占位符的值。即。

Enter name for 'other' metric...

通过此验证在Internet Explorer上失败并在crome上工作。

请帮帮我。

如何在Internet Explorer(版本9)上没有占位符的情况下获取SLOCriteriaOtherText的值

1 个答案:

答案 0 :(得分:2)

尝试使用此jQuery IE占位符库。 IE很糟糕的占位符:)

http://www.moreonfew.com/how-to-make-placeholder-work-in-ie/

示例用法 -

包括JS -

<!-- Include the jQuery file -->

<script src="jquery.min.js" type="text/javascript"></script>

<!-- Include the jquery.placeholder.js file -->

<script src="jquery.placeholder.js" type="text/javascript"></script>

定义您的DOM

<input type="text" name="emailAddress" placeholder="Enter your email address" />
<textarea name="about" placeholder="Tell us about yourself" />

放置它:)

<!-- Apply the placeholder functionality to elements 
  using appropriate jquery selectors -->

<script type="text/javascript">
    $('input[type=text], textarea').placeholder();
</script>