我想在我的表单中实现jquery / js,我想让输入值动态化。 基本上这个想法是,一旦点击该字段的值消失/模糊和 jquery期望用户插入一个值,如果设置了一个值并且它不相同 作为默认值,那就没关系。但是如果用户写的值是相同的 然后不接受并抛出错误,否则如果用户“输入”的值为空 再次显示默认值。我确定它是有道理的,因为我认为我已经在许多网站上看到了这个功能实现。但我现在是一个jquery家伙,所以我不知道 怎么做。我可以在php中做同样的事情,但页面刷新是我想要避免的。 假设我们有:
<input type="text" value="City" />
非常感谢, Borni。
答案 0 :(得分:2)
喜欢这个here?
$(document).ready(function() {
$('input[class="foo"]').attr('value', $(this).attr('placeholder')).focus(function() {
if ($(this).val('placeholder')) {
$(this).attr('value', '');
}
}).blur(function() {
if ($(this).val() == '') {
$(this).attr('value', $(this).attr('placeholder'))
}
});
});
编辑:更新了代码,并提出克里斯托弗·拉米雷斯提供的建议
答案 1 :(得分:1)
您想要的是“占位符”。它们是在Webkit和Mozilla等现代浏览器中实现的。我不确定IE的新版本是否实现了它们。
要使用它们,请在名为input
的{{1}}元素中声明一个新属性。像这样:
placeholder
作为备份,当浏览器不支持<input type="text" name="fullname" placeholder="Type your full name" />
属性时,this arclicle可能会帮助您获取所需内容
更新:This is a plugin我刚刚找到。似乎很容易使用。