javascript - IE9 的占位符脚本默认情况下不起作用。但在离开输入后工作

标签 javascript jquery

对于 IE 9 浏览器,我启用了输入占位符文本。当页面登陆时,它不显示占位符文本。但在我离开输入后它就起作用了。我缺少一些东西。

你能帮我吗

我的脚本是

// Initialize inline labels for IE
 if ($.browser.msie)
 {
    alert('i m iE')
  $("input[name='firstname']").each(function() {
   $(this).addClass("inlineLabel");
  });
  $("input[name='lastname']").each(function() {
   $(this).addClass("inlineLabel");
  });
  $("input[name='email']").each(function() {
   $(this).addClass("inlineLabel");
  });
  $("input[name='address']").each(function() {
   $(this).addClass("inlineLabel");
  });
  $("input[name='dayphone']").each(function() {
   $(this).addClass("inlineLabel");
  });
  $("input[name='zip']").each(function() {
   $(this).addClass("inlineLabel");
  });
  $("input[name='city_temp']").each(function() {
   $(this).addClass("inlineLabel");
  });
  initLabels();
 }

 // Inline labels
 function initLabels() {
    $("input.inlineLabel").each(function() {
        var l = $(this).attr("placeholder");
        this.value = l;
        $(this).addClass('unfilled');
    });
    $('input.inlineLabel').focus(function() {
        var l = $(this).attr("placeholder");
        if (this.value == l)
            $(this).val('').removeClass('unfilled');
    });
    $('input.inlineLabel').blur(function() {
        var l = $(this).attr("placeholder");
        if (this.value == '') {
            this.value = l;
            $(this).addClass('unfilled');
        }
    });
}

最佳答案

尝试将 this.value 替换为 $(this).val() 以获取输入值,并使用 $(this).val(your_value) 设置,就像您已经做的那样

关于javascript - IE9 的占位符脚本默认情况下不起作用。但在离开输入后工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36277186/

相关文章:

php - 如何在 Joomla 组件中使用 Jquery AJAX?

Javascript 仅适用于 UL 中的某些 LI

javascript - 滚动链接==更改类别。滚出 div == 将类改回来。不工作。帮助

javascript - 如何使用 JavaScript 将文件移动到其他目录?

javascript - 使用部分 View 、javascript 和 viewbag foreach 时出错

javascript - meteor 铁路由器数据未渲染

javascript - 在javascript中解析十六进制文字

JQuery 窗口打印功能问题

javascript - 如何使用CSS选择器不排除span文本

javascript - 通过浏览器将json写入本地文件