2014-01-11 1 views
-1

라디오 버튼을 클릭하면 id 값을 표시하지만 라디오 버튼을 클릭하면 정의되지 않은 메시지가 표시됩니다. 왜 그런 일이 일어나고있는거야?라디오 버튼을 클릭하면 jsp에서 정의되지 않은 메시지가 나타납니다. 이슈가 뭐야?

<script language="javascript> 
function openSubrurbicPopup(){ 
alert(document.frmRubric.rubricid.value);} 
</script> 
<% 
try{ 
    Class.forName("com.mysql.jdbc.Driver"); 
     con = DriverManager.getConnection("jdbc:mysql://localhost/database", "root", "admin"); 
     String sql = "select * from table where parentid='0'"; 
     rs = con.createStatement().executeQuery(sql); 
    %> 
     <form name="frmRubric" method="post" > 
    <% while(rs.next()){ 
      String id = rs.getString("id"); 
    %> 
      <input type="radio" name="radio" onclick="openSubrurbicPopup()" /> 
      <input type="text" name="rubricid" value="<%=id%>" /><br> 
     <%}%> 
     </form> 
    <%}catch(Exception e){ 
     out.println(e.getMessage()); 
     e.printStackTrace(); 
     } 
    %> 
</body></html> 
+0

http://stackoverflow.com/questions/3927250/unable-to-get-form-elements-by-using-form-name-in-javascript – Garbage

답변

-1

그냥 시도해보십시오. 함수에서 textbox 값을 전달하십시오.

onclick="openSubrurbicPopup('<%=id%>');" 

그리고 당신의 자바 스크립트 함수에서

이 당신을 도와줍니다

function openSubrurbicPopup(value){ 
     alert(value); 
} 

희망.

+0

그것의 일하는 지금 .. 감사합니다 !!! :) – user3098231

+0

당신은 오신 것을 환영합니다. 귀하의 upvote/답변으로 이것을 받아 답변에 더 많은 의미를 부여합니다. –

0

먼저 요소 (DOM)로드 여부를 선택해야합니다.

라디오 버튼이로드되면 코드를 사용해보십시오. 물론 도움이 될 것입니다.

var el = document.getElementsByTagName('input'); 

if (document.forms['frmRubric'].el[i].type === 'radio' && document.forms['jobView'].el[i].name === 'radio') 
{ 
    if(document.forms['frmRubric'].el[i].checked == true) 
    { 
     alert("val = " + document.forms['frmRubric'].el[i].value); 
    } 
}else { 
     alert('Element not loaded"); 
    } 
} 
+0

클릭 할 때 아무런 변화가 없습니다. 나는 또한 알고 싶다. 내가 태그 바로 앞에 줄을 추가하고 javascript를 사용하여 필드 이름을 변경하여 동일한 방법으로 값을 인쇄하면 값은 제대로 정의되지 않습니다. 왜 이래? – user3098231

관련 문제