2011-02-08 21 views
1

我有問題,我無法在以下javascript表單中設置兩種不同的文本顏色(通過css類)。標準類是灰色(灰色文本顏色),但是一旦有人點擊「在此鍵入您的郵件」,輸入的電子郵件顏色文本應爲黑色。 (黑色班)。有人可以幫助我嗎?javascript表格中的不同類(textcolor)

<form name="mainform" method="post"> 
    Your email: <input type="text" size="40" class="grey" name="email" value="{{ fields.email.input }}" onclick="ClearIfAppropriate();">{{ fields.email.error }} &nbsp; <input type="submit" name="submit" value="Go"> 
</form> 
<script type="text/javascript" language="JavaScript"><!-- 
    var LabelText = "Type your email here"; 
    if(document.mainform.email.value.length == 0) { 
     document.mainform.email.value = LabelText; 
    } 
    function ClearIfAppropriate() { 
     if(document.mainform.email.value == LabelText) { 
      document.mainform.email.value = ""; 
      document.mainform.email.class = "black"; 
     } 
    } 
//--></script> 

CSS類

.grey { 
    color: grey; 
} 

.black { 
    color: black; 
} 

回答

3

這是純CSS容易可行否JavaScript是必要的:

input.grey:focus 
{ 
    color: #000; 
} 

雖然我認爲即< 8不支持僞類:focus

0

給一個id您輸入(ID = 「idElement」)和

代替:document.mainform.email.class = 「黑色」;

嘗試:

的document.getElementById( 「idElement」)的setAttribute( 「類」, 「類名」);

應該這樣做。

相關問題