2012-02-29 48 views
0

我想控制,如果在這裏輸入的文本將是我的代碼,它不工作,我無法找到什麼是錯檢查是否輸入文字。找不到錯誤

<html> 
<head> 
    <script type="text/javascript"> 
     function CheckInfos() 
     { 
      var x=document.forms("name").value; 
      if(x==null) 
      { 
       alert("adınızı kontrol ediniz"); 
      } 
     } 
    </script> 
</head> 
<body> 
    <input type="text" id="name" /> 
    <input type="button" value="test" onclick="CheckInfos()"/> 
</body> 

+0

應該有在onclick功能後分號: – 2012-02-29 14:27:33

+0

的onclick = 「CheckInfos();」 – 2012-02-29 14:27:54

+0

@Philip Bevan不需要它不需要 – 2012-02-29 15:50:03

回答

3

不要使用「名稱」作爲ID,而是使用getElementById。

var value = document.getElementById("foo").value; 

但是,你應該使用一種形式:

<form name="myform" action="?" method="get" onsubmit="return CheckInfos(this)"> 
    <input type="text" name="foo" /> 
    <input type="submit" value="test"/> 
</form> 

<script> 
function CheckInfos(form) { 
    if (form.elements.foo.value == "") { 
    alert("error"); 
    } 

    return false; 
} 
</script> 
+0

我勸阻你使用像「name」這樣的ID的原因是因爲它可能導致命名衝突:http://stackoverflow.com/questions/9158238/ why-js-function-name-conflicts-with-element-id。 – 2012-02-29 14:47:05

2

嘗試

var x=document.getElementById("name").value; 
if (x == '') { alert('message'); } // instead of null thanks @minmin 
+1

它沒有工作。我沒有使用表單元素。這可能是一個原因嗎? – EkremG 2012-02-29 14:26:05

+1

@exstremum確實! – 2012-02-29 14:27:59

+2

if(x ==''){alert('message'); } – 2012-02-29 14:28:26

0

形式屬性在代碼中缺失,爲什麼它不起作用

+0

它沒有表單屬性。解決方案是--- if(x ==「」)--- – EkremG 2012-02-29 14:32:29