2012-06-05 53 views
1

我有以下兩個HTML表單輸入:的JavaScript的onblur /聚焦狀態功能

<input type="text" class="faded" name="mobile" value="012-245-6789" onfocus="hideDefault(this)" onblur="showDefault(this)"/> 

<input class="faded validation_required" type="text" name="dob" value="MM/DD/YYYY" onfocus="hideDefault(this)" onblur="showDefault(this)"/> 

及以下的javascript:

function hideDefault(input)  
{ 
if(input.name == "dob") 
{ 
    if (input.value == "MM/DD/YYYY") 
    { 
     input.value = ""; 
     input.style.color = "black"; 
    } 
} 
else if(input.name == "mobile") 
{ 
    if (input.value == "012-345-6789") 
    { 
     input.value = ""; 
     input.style.color = "black"; 
    } 
} 
    else 
{input.value ="hello";} 

} 
function showDefault(input) 
{ 
if(input.name = "dob") 
{ 
    if (input.value == "") 
    { 
     input.value = "MM/DD/YYYY"; 
     input.style.color = "#A3A3CC"; 
    } 
} 
else if(input.name == "mobile") 
{ 
    if (input.value == "") 
    { 
     input.value = "012-345-6789"; 
     input.style.color = "#A3A3CC"; 
    } 
} 

} 

的 「DOB」輸入工作正常,當你點擊它的默認文本消散器,當你離開它回來。但它並不適用於第一個,即「移動」的。爲什麼是這樣?

回答

3

你已經有了一個值不匹配:

value="012-245-6789" 
...  
    if (input.value == "012-345-6789") 
... 
    input.value = "012-345-6789"; 

注意,第4位是2,在其他一個地方,3。

而且,你錯過了一個等號這裏:

if(input.name = "dob") 
+0

好吧,這是愚蠢的。但是現在,當我離開「移動」輸入時,默認爲MM/DD/YYYY! – user1015214

+0

查看我剛纔對我的回答所做的補充。 –