2012-01-19 95 views
0

下面我有一個形式和驗證表單驗證工作在Chrome,但不能在Firefox

html code

<form name="rt_form" id="rt_form" method="post" onSubmit="return validate();"> 
    <input type="text" value="NAME" name="fname"> 
    <input type="text" value="EMAIL" name="femail"> 
    <input type="text" value="CONTACT NUMBER" name="fphone"> 
    <textarea name="fMESSAGE" cols="44" rows="8" id="MESSAGE"> 
</form> 

Javascript code

function validate() { 
alert("you have clicked"); 
    if (document.rt_form.fname.value.length < 1 || document.rt_form.fname.value == "NAME") { 
     alert("Enter Name"); 
     return false; 
    } 

    else if (!/^\[email protected]\S+\.\w+$/.test(document.rt_form.femail.value)) { 
     alert("Not a valid e-mail address"); 
     return false; 
    } 

    else if (!/^\d+$/.test(document.rt_form.fphone.value)) { 
     alert("Enter valid Number"); 
     return false; 
    } 

    else if (document.rt_form.fMESSAGE.value.length < 1 || document.rt_form.fMESSAGE.value="MESSAGE") { 
     alert("Enter Message"); 
     return false; 
    } 
    else { 
     return true; 
    } 

} 

當我在Chrome運行這段代碼它的工作好, 當在Firefox中打開時驗證不起作用...

即使在Firefox中單擊時警告框也不會顯示。

有沒有什麼可以增加compability或什麼的。

+1

你看到在Firefox中的任何錯誤.. –

+0

@Sudhir'[14:02:56.772]無效指定左邊@ http://fiddle.jshell.net/GMf8C/1/show/:32' – Esailija

回答

1

你有錯誤信息的錯誤,如果條件

document.rt_form.fMESSAGE.value="MESSAGE"

將其更改爲

document.rt_form.fMESSAGE.value=="MESSAGE"

和這個職位應該關閉

3

在文本框中驗證消息時,您使用的是單個'='。因此,您無法在FF中進行驗證。

一旦檢查你的代碼的下面真人版:

http://jsfiddle.net/GMf8C/

注:測試在FF8.0

0

你好朋友更正以下兩行

Change this line 
<textarea name="fMESSAGE" cols="44" rows="8" id="MESSAGE"> 

to 
<textarea name="fMESSAGE" cols="44" rows="8" id="MESSAGE"></textarea> 

Then change the line 

else if (document.rt_form.fMESSAGE.value.length < 1 || document.rt_form.fMESSAGE.value="MESSAGE") 

to 

else if (document.rt_form.fMESSAGE.value.length < 1 || document.rt_form.fMESSAGE.value=="MESSAGE") 

希望這能解決你的問題

相關問題