<script type="text/javascript">
jQuery(function() {
var default_val = "Name";
jQuery("input[name='first_name']").val(default_val)
.focus(function() {
if (jQuery(Name).val() == default_val) {
jQuery(this).val("")
}
});
var default_val = "Email Address";
jQuery("input[name='email']").val(default_val)
.focus(function() {
if (jQuery(this).val() == default_val) {
jQuery(this).val("")
}
});
var default_val = "Practice Name";
jQuery("input[name='practice_name']").val(default_val)
.focus(function() {
if (jQuery(this).val() == default_val) {
jQuery(this).val("")
}
});
var default_val = "Practice Website URL";
jQuery("input[name='practice_url']").val(default_val)
.focus(function() {
if (jQuery(this).val() == default_val) {
jQuery(this).val("")
}
});
var default_val = "Telephone";
jQuery("input[name='phone_number']").val(default_val)
.focus(function() {
if (jQuery(this).val() == default_val) {
jQuery(this).val("")
}
});
});
</script>
0
A
回答
0
您可以使用不同的变量为每个输入设定的默认值,以避免重写值。例如:
HTML:
<input name="practice_url" value="" />
<input name="phone_number" value="" />
JS:
jQuery(function() {
var default_val_practice_url = "Practice Website URL";
jQuery("input[name='practice_url']").val(default_val_practice_url)
.focus(function() {
if (jQuery(this).val() == default_val_practice_url) {
jQuery(this).val("")
}
});
var default_val = "Telephone";
jQuery("input[name='phone_number']").val(default_val)
.focus(function() {
if (jQuery(this).val() == default_val) {
jQuery(this).val("")
}
});
});
JS提琴: http://jsfiddle.net/22mo0mL3/ 顺便说一句,你可以使用jQuery占位符库。这也很酷! (https://github.com/mathiasbynens/jquery-placeholder)
0
您正在使用default_val
的一切。而不是使用的,使用的变量名有意义像deafult_name
,default_email
,default_url
等。此外,它可能是最好的做法是把这些类的静态变量的代码的顶部
0
注意:您应该考虑使用代替placeholder
attribute。
您正在使用的是传递给.focus()
方法的回调函数里面default_val
变量。当调用回调函数时,该变量的值不是调用.focus()
方法时的值。
您可以将您的重复的代码放到一个函数:
jQuery(function($) {
function setDefaultValue($input, defaultValue) {
$input.val(defaultValue).focus(function() {
var $input = $(this);
if ($input.val() == defaultValue) {
$input.val("");
}
});
}
setDefaultValue($("input[name='first_name']"), "Name");
setDefaultValue($("input[name='email']"), "Email Address");
setDefaultValue($("input[name='practice_name']"), "Practice Name");
setDefaultValue($("input[name='practice_url']"), "Practice Website URL");
setDefaultValue($("input[name='phone_number']"), "Telephone");
});
注:
- 的
jQuery
对象作为参数传递给回调传递给jQuery()
功能函数传递。上面的代码使用这个事实,因此可以使用$
安全地引用jQuery
对象。 - 在传递给焦点方法的回调函数中,
this
引用调用.focus()
的元素。
+0
我看到你在那里做了什么。感谢您的帮助! – IVLEAGUE
相关问题
- 1. 无法获得“第n个最后孩子”的工作
- 2. 无法获得的功能才能正常工作
- 3. 删除功能无法正常工作
- 4. 又一个“焦点()将无法工作”
- 5. 获得阵列中的所有值除了最后一个
- 6. node.js - 无法获得mongodb的工作,可能安装了错误?
- 7. Cookie清除后,登录功能无法正常工作
- 8. 无法获得工作表功能的MMult属性
- 9. 无法获得工作的功能(Node JS,Mongoose)
- 10. 无法获取SVC得分功能工作
- 11. 无法获得树枝功能包括工作
- 12. 无法获得工作表功能类的匹配属性
- 13. 获得一个ID功能的对象
- 14. 无法获得该功能的工作,程序总是在提示后崩溃
- 15. 无法获得最后的孩子在我的CSS工作
- 16. 我无法获得对象属性作为功能
- 17. iOS辅助功能 - 控制哪个UI对象获得焦点
- 18. 无法获得HealthMonitoring工作
- 19. 无法获得UpdateAttributeRequest工作
- 20. 无法获得onserverclick工作
- 21. 无法获得Ninject.Extensions.Interception工作
- 22. 无法获得NSTimer工作
- 23. 无法获得JOIN工作
- 24. 无法获得OpenHardwareMonitorLib.dll工作
- 25. 无法获得轨工作
- 26. 无法获得IClientMessageFormatter工作
- 27. 无法获得presentViewController工作
- 28. 获得了反应功能
- 29. 试图获得一个测验功能,以迅速工作
- 30. 我如何获得两个功能一起工作?
请发表您的完整代码,最好是演示。 –
你只有一个'default_val'变量。每次你将它设置为等于某个值时,你就会覆盖以前的值。 – Stryner
那么我只需要像“default_val_1”一样添加一个数字? – IVLEAGUE