我不知道這是否有一個特殊的名稱,但有沒有一個很好的簡單方法來設置輸入字段中的默認文本,它會消失在焦點上,並在文本框爲空時重新出現模糊?輸入字段中的默認文本
6
A
回答
4
- http://plugins.jquery.com/project/Watermark
- http://digitalbush.com/projects/watermark-input-plugin/
- http://cysemic.com/2008/12/very-simple-textbox-watermark-using-jquery/
我鼓勵使用插件,除非你有充足的時間devel的的選擇和測試。在編寫此代碼時,需要注意許多問題和副作用。
- 當字段包含水印文本時,將該字段驗證爲'空'。 從而區分水印文本和輸入的文本。
- 不提交水印文本。
- 防止用戶輸入水印文本本身:)
- 造型水印文本。
- 等,等....
+0
我只是想讓你知道4個鏈接中有3個是壞的。 – 2014-01-15 17:09:19
2
這是solution。
$(".defaultText").focus(function(srcc)
{
if ($(this).val() == $(this)[0].title)
{
$(this).removeClass("defaultTextActive");
$(this).val("");
}
});
$(".defaultText").blur(function()
{
if ($(this).val() == "")
{
$(this).addClass("defaultTextActive");
$(this).val($(this)[0].title);
}
});
$(".defaultText").blur();
2
你可以試試這個:使用title屬性存儲默認文本
$(function(){
$(".makedefault").bind("blur",function(){
if($(this).val().length == 0)
{
$(this).val($(this).attr('title'));
}
});
$(".makedefault").bind("focus",function(){
if($(this).val() == $(this).attr('title'))
{
$(this).val("");
}
});
});
4
該功能被稱爲水印,並能以多種方式來達到的,其中之一是
onfocus="if(this.value=='Enter Email')this.value=''"
onblur="if(this.value=='')this.value='Enter Email'"
這將電子郵件文本框工作。
19
您可以使用新的HTML5佔位符屬性。
編輯:更新使用更多的HTML5/jQuery hotness,HTML5數據存儲。
<input type="text" placeholder="type here" data-placeholder-text="type here" />
這將適用於所有現代瀏覽器。並在IE中優雅地降級。但對於IE,你必須使用JavaScript。
$(document).ready(function() {
var $input = $('#id_of_input_element');
$input.focus(function() {
if($(this).val() == $(this).data('placeholder-text')) {
$(this).val('')
}
}).blur(function() {
if($(this).val() == '') {
$(this).val($(this).data('placeholder-text'));
}
}).trigger('blur');
}):
1
你可以使用這個插件(我的合着者)
https://github.com/tanin47/jquery.default_text
其複製的輸入字段,並把它放在那裏。
它適用於IE,Firefox,Chrome甚至iPhone Safari,它有着名的焦點問題。
這樣您就不必擔心在提交前清除輸入字段。
OR
如果你想HTML5而已,你可以用屬性 「佔位符」 上輸入字段
0
這裏是我的做法(使用jQuery):
<input id="myBox" type="text" />
<script>
// Input field and default text
var $element = $('#myBox');
var defaultText = 'Hello World';
$element.focus(function(){
// Focused
$element.removeClass('defocused').addClass('focused');
if($element.val() == defaultText)
$element.val('');
}).blur(function(){
// Defocused
$element.removeClass('focused').addClass('defocused');
if($element.val() == '')
$element.val(defaultText);
});
// Initialization
$element.blur();
</script>
相關問題
- 1. 文本中的默認文本字段
- 2. 作爲jQuery datepicker的文本輸入字段默認日期
- 3. 輸入密碼字段的默認文本
- 4. PHP默認文本輸入字段的值
- 5. 的form_tag默認輸入字段
- 6. Android文本字段默認爲中文
- 7. 在文本字段中添加默認文本,並跟隨用戶輸入值
- 8. 輸入上的默認文本
- 9. 在表單的文本字段中設置默認文本
- 10. Combobox DropDownList默認提示輸入文字
- 11. 默認輸入數字值
- 12. 如何設置輸入文本字段的默認遊標屬性?
- 13. Hibernate中嵌入字段的默認值。 java.sql.SQLException:字段'url'沒有默認值
- 14. 輸入文件字段輸入文本字段
- 15. 日期Outsystems中的輸入字段默認值
- 16. 如何將默認值添加到Thymeleaf中的輸入字段
- 17. 如何設置SELECT輸入字段中的默認選項
- 18. 如何在CakePHP的輸入字段中設置默認值?
- 19. Android WebView中輸入字段的默認操作
- 20. 將默認值設置爲React中的輸入字段?
- 21. d3.js中的文本輸入字段
- 22. iMacros中的文本輸入字段
- 23. 在AS3中輸入文本字段中輸入按鍵輸入
- 24. jQuery字段默認文本焦點前的文本區域
- 25. 在表單輸入字段中創建默認值
- 26. sqlite的插入與默認字段的默認值
- 27. 在android中的文本字段中加載默認值?
- 28. 過濾從文本字段中輸入
- 29. 從輸入字段中刪除文本
- 30. 居中輸入文本字段
名稱是佔位符。現在它正式成爲HTML(5)規範的一部分,所有現代瀏覽器都支持它作爲內聯HTML。有關解釋,請參閱下面的答案。 – xzyfer 2011-02-01 11:53:23