2012-04-03 382 views
0

我不明白爲什麼我的javascript不工作...我需要在某處聲明一個變量嗎?Javascript表單驗證不起作用

<script type="text/javascript"> 
function validation(form) {
      
 
if(form.first_name.value == '') {

alert('Please enter your first name');
  form.first_name.focus();
return false;
}
 

if(form.00N30000006S4uq.value == '') {

alert('Please enter the high end of your budget');
 form.company.focus();
return false;
}
 

return true;
} 
</script> 



<form action="https://www.salesforce.com/servlet/servlet.WebToLead" method="POST" onsubmit="return validation(this);"> 
+1

約在表格的其餘部分是什麼,我們可以看到的標記嗎? – 2012-04-03 02:11:51

+0

確定它是:salesforce.com自動生成的 – 2012-04-03 06:39:39

回答

1

正如@ReturnTrue提到的,NAME必須以字母開頭。這就是你的腳本失敗的原因。

自從你田間的情況下是自動生成的,如果你知道在形式要素的流動,那麼你可以參考的表單元素數組,像這樣...

form.elements[2].value 

其中form.elements[2]form.00N30000006S4uq。這將完成這項工作。

例子:

function validation(form) { 
    if(form.elements[0].value == '') { 
     alert('Please enter your first name'); 
     form.first_name.focus(); 
     return false; 
    } 

    if(form.elements[2].value == '') { 
     alert('Please enter the high end of your budget'); 
     form.company.focus(); 
     return false; 
    } 

    return true; 
} 

<form action="" method="POST" onSubmit="return validation(this);"> 
<input type="text" name="first_name" /> 
<input type="text" name="company" /> 
<input type="text" name="00N30000006S4uq" /> 
<input type="submit" name="submit" /> 
</form> 
+0

看起來真棒我會嘗試! – 2012-04-03 07:21:01

+0

讓我知道它是怎麼回事,如果你滿意,不要忘記接受答案。 – neo108 2012-04-03 07:59:24

+0

so ...'if(form.elements [2] .value'按順序選擇每個表單元素?12345 ...等等? – 2012-04-03 08:16:49