2013-08-23 2 views
-1

확인 된 필드의 합계를 생성하는 맞춤 JavaScript (처음에는)를 만들었습니다.Wordpress에서 사용자 정의 Javascript가 작동하지 않습니다.

그러나 WordPress에서 구현하면 아무 효과가 없습니다. 나는 뭔가를 간과하고있는 것 같지만, 나는 그것을 이해할 수 없을 것 같다.

<script type="text/javascript"> 
<!-- 
function show_selected_item_val($item) 
{ 
    var res1 = 0, res2 = 0, res3 = 0, res4 = 0, res5 = 0, res6 = 0, res7 = 0, res8 = 0, res9 = 0, res10 = 0; 
    var res11 = 0, res12 = 0, res13 = 0, res14 = 0, res15 = 0, res16 = 0, res17 = 0, res18 = 0; 
    if(document.all['Q1'][0].checked)  res1 = 1; 
    if(document.all['Q2'][0].checked)  res2 = 1; 
    if(document.all['Q3'][0].checked)  res3 = 1; 
    if(document.all['Q4'][0].checked)  res4 = 1; 
    if(document.all['Q5'][0].checked)  res5 = 1; 
    if(document.all['Q6'][0].checked)  res6 = 1; 
    if(document.all['Q7'][0].checked)  res7 = 1; 
    if(document.all['Q8'][0].checked)  res8 = 1; 
    if(document.all['Q9'][0].checked)  res9 = 1; 
    if(document.all['Q10'][0].checked)  res10 = 1; 
    if(document.all['Q11'][0].checked)  res11 = 1; 
    if(document.all['Q12'][0].checked)  res12 = 1; 
    if(document.all['Q13'][0].checked)  res13 = 1; 
    if(document.all['Q14'][0].checked)  res14 = 1; 
    if(document.all['Q15'][0].checked)  res15 = 1; 
    if(document.all['Q16'][0].checked)  res16 = 1; 
    if(document.all['Q17'][0].checked)  res17 = 1; 
    if(document.all['Q18'][0].checked)  res18 = 1; 

    document.getElementById("show_content").innerHTML= res1 + res2 + res3 + res4 + res5 + res6 + res7 + res8 + res9 + res10 + res11 + res12 + res13 + res14 + res15 + res16 + res17 + res18; 
} 
//--> 
</script> 

이것은 HTML은 다음과 같습니다 :

<table> 
     <tr> 
     <td> 
      <input type="radio" name="Q1" value="1" onClick="show_selected_item_val(this)"/>yes 
      <input type="radio" name="Q1" value="0" onClick="show_selected_item_val(this)"/>no 
     </td> 
     </tr> 

     <tr> 
     <td> 
      <input type="radio" name="Q2" value="1" onClick="show_selected_item_val(this)"/>yes 
      <input type="radio" name="Q2" value="0" onClick="show_selected_item_val(this)"/>no 
     </td> 
     </tr> 

     <tr> 
     <td> 
      <input type="radio" name="Q3" value="1" onClick="show_selected_item_val(this)"/>yes 
      <input type="radio" name="Q3" value="0" onClick="show_selected_item_val(this)"/>no 
     </td> 
     </tr> 

     <tr> 
     <td> 
      <input type="radio" name="Q4" value="1" onClick="show_selected_item_val(this)"/>yes 
      <input type="radio" name="Q4" value="0" onClick="show_selected_item_val(this)"/>no 
     </td> 
     </tr> 

     ... 

</table> 

the result is: <span id="show_content"> 

나는 functions.php 파일을 통해 자바 스크립트를로드하고있어

이 내 자바 스크립트입니다. 나는 점검했고,로드를한다. 결과가 표시되지 않습니다.

그래서 스크립트 처리가 올바르지 않다고 생각합니다.

제안 사항?

+0

JavaScript로 다시 태그 달기 –

+0

적절한 방식으로 태그를 지정하는 것이 좋습니다. 이것은 자바가 아닙니다. –

+0

그럼 실제로 show_selected_item_val 함수를 어디에서 호출합니까? – fred02138

답변

0

이 시도 :

function show_selected_item_val() 

...

<input type="radio" name="Q2" value="1" onClick="show_selected_item_val()"/>yes 
<input type="radio" name="Q2" value="0" onClick="show_selected_item_val()"/>no 
0

이유 :

http://jsfiddle.net/4CFcy/ 나는 함수 호출에서 함수에서 $ 항목 매개 변수와이 인수 예 : 삭제 더 이상 뭔가를하지 마십시오 :

function show_selected_item_val() { 
    var score = 0 
    for (i = 1; i < 5; i++) { 
     if (document.getElementsByName('Q' + i)[0].checked) { 
      score++; 
     } 
    } 
    document.getElementById("show_content").innerHTML = score; 
} 

http://jsfiddle.net/BhEAq/

관련 문제