2012-02-01 40 views
0

我已閱讀了幾個有關此問題的問題,我相信我正在做正確的事情,但仍然無法正常工作!使用JavaScript無法更改輸入邊框顏色

我使用普通的舊JavaScript作爲遺留代碼,但如果必須我也可以使用jQuery。

我有我的形式,其爲形式的(沒有雙關語意):

<form action="submit.php" method="post" name="myForm" onsubmit="return validateInfoForm()"> 
    <input type="text" class="boxes" name="Forename" id="Forename" placeholder="Forename" /> 
    .... 
</form> 

JS

function validateInfoForm() 
{ 
    var b=document.forms["myForm"]["Forename"].value; 
    var c=document.forms["myForm"]["Surname"].value; 
    var f=document.forms["myForm"]["Postcode"].value; 
    var g=document.forms["myForm"]["Telno"].value; 
    var h=document.forms["myForm"]["Email"].value; 

    if (b==null || b=="") 
{ 
    alert("Enter Forename"); 
    document.getElementById('Forename').style.borderColor = "#FF0000"; 

    // before it was using document.forms["myForm"]["Forename"] as the selector but I changed it to try and get it to work. It was also doing .focus() rather than changing the border colour. 

    return false; 
} 

沒有收到任何錯誤,我只是得到了警告框,然後我的光標被放置在輸入內,我也不想要,因爲它是刪除佔位符,這就是爲什麼我已經刪除了.focus()並試圖改變顏色。

任何想法?

回答

0

我猜它正在改變邊框的顏色,但因爲元素沒有邊框它不應用它嘗試:

document.getElementById('Forename').style.border = "1px solid #ff0000"; 
+0

感謝,嘗試過,但結果是一樣的。在所有文本輸入元素上已經有一個藍色的2px邊框,所以我認爲它應該變成紅色,但即使添加寬度似乎也不會影響它。 – martincarlin87 2012-02-01 13:48:29

+0

WFM。 jquery-ish中的簡化版本http://jsfiddle.net/6pN2q/ – Yule 2012-02-01 13:57:46

+0

嗯,謝謝你。我現在完全困惑爲什麼我的代碼不工作:( – martincarlin87 2012-02-01 14:02:15

0

嘗試設置邊框寬度和樣式。