【问题标题】:jQuery detect value of inputjQuery检测输入值
【发布时间】:2016-03-08 15:40:54
【问题描述】:

我有这个脚本来检测输入值。如果我写下一些要输入的东西,它会很好用,但是如果输入有预先归档的数据,为什么这个东西会起作用?

if ($("input").val().length != 0) {
    $(this).siblings().css ({
        top: "20px",
        left: "0",
        fontSize: ".7em",
        color: "#8B8B8B"
    });    
};

这是我的密码笔http://codepen.io/anon/pen/qZZBXr?editors=1010

【问题讨论】:

  • 你能发布完整的代码吗?你的笔什么都不做。
  • 您的问题似乎有点不清楚。至少对我来说。请通过添加有关您想要做什么和什么不起作用的更多详细信息来纠正您的问题。
  • 您的this 不是指您的想法,这使您的所有问题都不清楚。现在要回答您的问题,您需要检查 defaultValue 与当前的比较。这显然应该在一些用户交互之后完成,例如使用更改事件
  • 只有在发生变化时才会进行检查,您可以在加载时触发更改,因此它会验证预定义的输入。
  • 不清楚你想做什么。您只是想在页面加载时运行此代码,还是在元素中输入内容时运行此代码?如果是后者,如果值被清空,是否需要删除样式?一些细节会有很大帮助。

标签: javascript jquery input


【解决方案1】:

由于页面上有多个输入,因此您必须检查每个输入的值。以下代码应该适合您

$(function() {

  $("input").each(function(input) {
    if ($(this).val().length != 0)
    {
      $(this).siblings().css({
        top: "20px",
        left: "0",
        fontSize: ".7em",
        color: "#8B8B8B"
      });
    };
  })

})

这里是JSFiddle 代码。

请注意,这仅在页面加载时有效。如果您想在输入值更改时更改标签的颜色,则必须使用输入更改处理程序。

【讨论】:

    猜你喜欢
    • 2016-11-17
    • 1970-01-01
    • 2016-10-04
    • 2011-09-25
    • 2011-09-21
    • 2015-03-30
    • 2017-02-16
    • 2022-12-28
    相关资源
    最近更新 更多