2014-11-20 4 views
-1

간단한 다운 카운터를 만들려고합니다. 웬일인지 javascript가 올바른 요소를 타겟팅하는 데 문제가 있습니다. 현재 jQuery를 사용하려고합니다.jQuery를 사용하여 HTML 입력 필드 값 가져 오기/변경

function modCount(val){ 

var CC = $("count").value; 

alert($("count").value); 

var NewCount = parseInt(CurrentCount,10) + val; 


$("count").value = NewCount; 

return NewCount; 
}; 

내가 무슨 일을하고있는 중이 야 :

여기

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     <title>New Web Project</title> 



     <script src="js/jquery-1.11.1.min.js"></script> 
     <script src="js/go.js"></script> 



    </head> 
    <body> 
     <table> 
      <tr ><td ><button id="up" onclick="modCount(1)">2,3,4,5,6</button></td></tr> 
      <tr><td><h1><input id="count" value="0" /></h1></td></tr> 
      <tr ><td ><button id="down" onclick="modCount(-1)">10,J,Q,K,A</button></td></tr> 
     </table> 
    </body> 
</html> 

내 go.js 내 HTML입니까? 경고는 $ ("count")의 값이 정의되지 않는다고 계속 말합니다.

답변

0

많이 잘못되었습니다.

var CC = $("count").value; 

# JQuery와 함께 이드, 접두사

표적으로하고, 상기 방법은, 필드의 값은이다 val() 도착.

var CC = $("#count").val(); 

var NewCount = parseInt(CurrentCount,10) + val; 

로 변경 당신은 변수 CC하지 CurrentCount을했다.

var NewCount = parseInt(CC,10) + val; 

로 변경 (멋진 일이 parseInt에 기수를 제공! - 만점가)


$("count").value = NewCount; 

다시는, 해시를 제공하고 값을 설정하는 방법은 .val()입니다.

$("#count").val(NewCount); 

return NewCount; 

값을 반환 할 필요가 없습니다로 변경, 당신은 결코 그것을 사용하지 않는 것 - 단지이 줄을 제거합니다.

근무 샘플 :

function modCount(val){ 
 

 
var CC = $("#count").val(); 
 

 
var NewCount = parseInt(CC,10) + val; 
 

 
$("#count").val(NewCount); 
 

 
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr ><td ><button id="up" onclick="modCount(1)">2,3,4,5,6</button></td></tr> 
 
    <tr><td><h1><input id="count" value="0" /></h1></td></tr> 
 
    <tr ><td ><button id="down" onclick="modCount(-1)">10,J,Q,K,A</button></td></tr> 
 
</table>

0

변경

$("count") 

$("#count") 

...합니다. 선택자 접두사 앞에 #

과 같이 ID를 지정하는 것이 좋습니다. jQuery를 사용하면 문제가 생겼을 때 항상 선택자를 첫 번째 용의자로 삼으십시오. 그들은 선택의 잘못, 또는 코드가 실행되고, 요소가 DOM에 전에 0을 제공하는 경우

alert($('your-selector-here').length); 

을 실행하여 아무것도 일치하고 있는지 확인할 수 있습니다.

+1

^네 - 나는 같은 말을 로그인했을 때이 권리를 게시! – remixdesign

+0

누군가 나를 떨어 뜨렸다. 왜 그런지 모르겠다! – Utkanos

+0

내 DV가 아니므로, 무엇이 잘못되었는지 흠집 냈기 때문에 추측 해보십시오! – Jamiec

관련 문제