2012-04-15 43 views
0

我創建一個輸入表單,我知道該怎麼做的onfocus的onblur佔位符的東西等等等等。值保持爲用戶類型

除了對我的輸入字段上層疊一個div,這就是我想要做的..

當在輸入字段用戶點擊(在這種情況下中鍵入網站地址)

我怎樣才能讓這個HTTP://出現在輸入字段,並且當他們專注於該字段時,文本提示出現在http://

因此,他們所做的只是輸入網站網址的其餘部分。

例如: enter image description here

<fieldset> 
    <input type="text" class="requiredField" name="websitename" value="http://" onfocus="if(this.value=='http://')this.value='';" onblur= "if(this.value=='')this.value='http://';"/> 
    </fieldset> 

從上面的例子中,HTTP://出現在輸入元件。但點擊後,它就會消失。我想要做的是在http://之後出現提示符,以便您可以鍵入他們的網站地址。

也許jQuery可以解決這個問題,它很難知道在google上搜索什麼來獲得一些想法。

我確定我看到網站實現了這一點。我不只是要一個形象,因爲上提交,我還是希望它解析完整的URL,而不僅僅是www.fsfsdfsfsd.com位,他們在實際鍵入。

乾杯

回答

1

獲得的價值,然後重新插入價值。

$('input[name="websitename"]').focus(function() { 
    var theVal = $(this).val(); 
    $(this).val(theVal); 
}); 

對不起,編輯。忘記了右括號。

編輯2:你可能會看到的問題的一部分是,你的onfocus和onblur在你的輸入上,而onfocus正在清除現有的值。刪除並嘗試我的腳本。

+0

嗯..也許我沒有解釋,我想HTTP://要在輸入單元當用戶點擊進去,文本提示出現在http://之後,這樣他們只需鍵入www.whatever,我不知道你在說什麼會做到這一點。無論如何感謝 – 422 2012-04-15 00:29:17

+1

我已經使用這種方法進行文本清理(刪除不需要的字符),通常綁定到一個keyup。我實際上必須修改我自己的代碼,以防止光標跳到最後,以便箭頭鍵可以用於編輯目的。當你抓住這個值並重新插入它時,你將光標移動到最後。或者,您可以手動將值「http://」添加到輸入字段中,使其不必在html中設置值。 – Lazerblade 2012-04-15 00:33:09

+0

添加了示例圖像,這是你的腳本會做什麼?如果我快速提琴,你是否樂意添加你的代碼? – 422 2012-04-15 00:34:02

-2

如果我的理解正確,您只需刪除onfocusonblur事件處理程序。在這種情況下,您不需要它們,因爲您始終將input的值設置爲http://。在同一時間使用佔位符默認值沒有意義。

BTW:一種更好的方式來做到佔位符是使用placeholder屬性:

<input type="url" name="website" placeholder="Your website"> 
+0

哈哈歡呼,爲什麼我會同時使用兩個?無論如何感謝 – 422 2012-04-15 00:46:31

+0

謹慎解釋downvotes?我誤解了這個問題嗎? – powerbuoy 2012-04-15 00:59:27

+0

重點,任何佔位符文本被刪除。 – 422 2012-04-15 01:36:52