2010-10-05 34 views
0

我想創建一個用戶名的文本框,但一旦他開始輸入我需要的用戶名要求的小圖像動態顯示..文本框的CSS與信息

誰能幫助我?

+0

爲什麼一個形象呢?爲什麼不顯示描述用戶名要求的文字?只是好奇。 – kevtrout 2010-10-05 17:12:36

回答

1

讓說A1是你的文本框和X1是你的形象:

<script> 
    function txtChange(){ 
     a1=document.getElementById(a1); 
     x1=document.getElementById(x1); 
     if(a1.value.length>0) { 
      x1.style['display'] = true; 
     } 
    } 
</script> 


protected void Page_Load(object sender, EventArgs e) 
{ 
    a1.Attributes["onchange"] = "txtChange()"; 
} 

哦,我想,如果你想讓它值得一提的只是當他們專注(點擊它),而不是當他們添加文本你可以改變 「onchange」 到 「onfocus

+0

我很困惑,你是否在你的C#代碼中使用了Javascript變量? – Marko 2010-10-05 19:55:15

+0

不,行'a1 = document.getElementById(a1);'和'x1 = document.getElementById(x1);'使'a1'和'x1'引用C#控件(在這種情況下是文本框和圖像)。 – 2010-10-05 21:14:23

+0

這是怎麼做到的與CSS和HTML?這是一個javascript解決方案。 – jimplode 2010-10-06 07:56:47

1

當文本框具有焦點時,可以使用文本框中的focus focus psuedo類添加樣式。

雖然你不能做你沒有javascript的問題。

+0

他*可能*能夠使用':focus'和':after'來做到這一點,但它不是一個乾淨的解決方案。 JS是需要的 – 2010-10-05 17:03:47

-1

根據圖像的位置,你可以做這樣的事情:

HTML

<input class="my_textbox"><img src=""/> 

,然後使用 「:聚焦」 和CSS兄弟選擇:

CSS

input.my_textbox + img { 
    display:none; 
} 
input.my_textbox:focus + img { 
    display:block; 
} 
+0

請告訴我你沒有把一個圖像放在一個文本框中....這是錯誤的! – jimplode 2010-10-06 07:57:45

+0

錯誤不,它是兄弟選擇器... 標記不在輸入內部。它在輸入元素之後。 – MonkeyBoo 2010-10-06 23:34:59