2013-04-19 5 views
0
<html> 
<head> 
<title>Calculator</title> 

<style type = "text/css"> 
#calculator{ 
width:164px; 
top:20%; 
right:50%; 
position:absolute; 
border:1px black solid; 
background-image:url('images.jpg'); 
} 

#matrix 
{ 
float:right; 
border:1px black solid; 
width:100px; 
} 
#row1{ 
position:relative; 
width:17px; 
} 
</style> 

</head> 
<body> 

</div> 
<div id = "matrix"> 
<form> 
<table> 
    <tr><td style = "width:40px"><input type = "text" id = "one"></input></td> 
    <input type = "number" id = "two"></input></td></tr> 

    <tr><td><input type = "number" id = "three"></input></td> 
    <input type = "number" id = "four"></input></td></tr> 

</table> 
<input type = "submit" value = "count" onclick = "calculate();"></input> 
</form> 
</div> 
<script language = "javascript" type = "text/javascript"> 
function calculate(){ 
var a = document.getElementById('one').value; 

alert(a); 
} 

</script> 

</body> 
</html> 

해당 함수에서 id가 제대로 접근 할 수 없으므로 해당 변수를 경고하려고 할 때 경고 상자가 비어 있습니다. 내 머리 속에 자바 스크립트 코드가 있지만 이전에는 작동하지 않았다. 본문 섹션으로 이동하면 상황이 바뀌지 않았다. 아무도 자바 스크립트에서이 오류를 해결할 수 있다면 큰 도움이 될 것이다. jquery를 쓰지 마라. 대안으로 코드. 탄약.GetElementById 자바가 값에 액세스 할 수 없습니다.

+2

참고로, 'input' 요소에는 별개의''닫는 태그. –

+1

귀하의 HTML 형식이 잘못되었습니다 (여는 태그가없는 닫는''태그가 있음), 여전히 작동합니다 : http://jsfiddle.net/KBv82/ – Blender

+0

'' '과' '사이의 공백을 제거하면 어떻게됩니까? = '속성에 대해' '요소마다 별도의 닫는 태그를 넣지 마십시오? – Dai

답변

1

귀하의 의견에 대한 ID 추가 및 변경을 button에 :

<input id="count" type="button" value="count"> 

을 그리고이 사용

var count = document.getElementById("count").addEventListener("click", calculate, false); 
function calculate() { 
    var a = document.getElementById('one').value; 
    alert(a); 
} 

jsFiddle
참고에 그것을 참조 : 나는 당신의 마크 업 a를 정리 little

+0

그게 실제로 더 깨끗한 방법이지만, 이것은 그가 겪고있는 오류와 아무런 관련이 없습니다. – Kenneth

+0

이유는 모르지만 작동하지 않았습니다. 그리고 왜 그냥 onClick 이벤트 처리기를 사용할 수 없습니까? – user2167174

+0

@ user2167174, 모두들 언급했듯이, 당신의'html'은 형식이 잘못되었습니다. 먼저 수정하고 다시 테스트하십시오. 그러나 이것은 효과적입니다. 내 대답에'jsFiddle' 링크를 추가하겠습니다. –

1

귀하의 버튼은 제출 버튼입니다. 당신은 버튼으로 변경해야합니다 : 그것은 매우 잘못된 형식이기 때문에

<input type = "button" value = "count" onclick = "calculate();" /> 

이 외에도에서, 당신은 당신의 HTML을 수정해야하며, 아마 당신은 나중에 오류를 유발할 수 거기 몇 가지가 있습니다.

관련 문제