【问题标题】:Prepend or Append INSIDE <input> tag在 <input> 标签内添加或添加
【发布时间】:2014-06-19 21:40:57
【问题描述】:

我正在使用自定义表单生成器处理自定义 CMS。没有为输入字段使用自定义占位符的选项。

我有一个这样的输入标签:

<input type="text" style="width:390px;" id="Optiona200368a" maxlength="120" name="ctl00$MainContent$ctl00$Optiona200368a">

我需要输入标签才能读取

<input placholder="Email Address" type="text" style="width:390px;" id="Optiona200368a" maxlength="120" name="ctl00$MainContent$ctl00$Optiona200368a">

有什么方法可以用 JQuery 实现这一点吗? 谢谢!

【问题讨论】:

  • 所以给它一个placeholder 属性。有什么问题?您当然不会使用.append。这没有任何意义。
  • 我强烈建议您花一两个小时阅读the jQuery API documentation。它真的只需要那么长的时间,而且它很快就会收回成本。
  • 谢谢 T.J. ...这很有趣,因为我只是要承认并问你我真的是一个全面的设计师并且非常了解基本的 JQuery...我只是不知道如何自己编写它,所以我要问在那里我可以找到能够自己编写这样的东西的基础知识。所以再次感谢你,真的很感激!
  • @user3758185:大声笑,很高兴为您提供帮助。 :-)

标签: javascript jquery html input


【解决方案1】:

所以你需要添加一个placeholder 属性。是的,你可以用 jQuery 做到这一点:

$("#Optiona200368a").attr("placeholder", "Email Address");

如果id 不可靠,您可以使用$() 位中的任何其他CSS 选择器来查找元素。

添加属性的代码在元素已经存在之后运行,这一点很重要。确保这一点的最佳方法是将包含它的script 标记放在文档底部,就在结束&lt;/body&gt; 标记之前。但是,如果您不控制脚本的去向(并且对于某些 CMS,您不控制),您可以将代码包装在 jQuery“就绪”处理程序中,如下所示:

$(function() {
    $("#Optiona200368a").attr("placeholder", "Email Address");
});

这会延迟函数内部的代码,直到主要的 HTML 解析和加载完成,即使脚本位于主体之上。

【讨论】:

  • 完美,明白了!谢谢一百万!
  • @Jason:不要忘记 OP 有 15 分钟的警戒时间不能接受任何答案。 :-) 所以当事情真的很快时,他们必须稍后再回来做。 (但谢谢。)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-20
  • 2011-12-02
  • 2016-04-24
相关资源
最近更新 更多