2017-02-18 30 views
0

名爲alternativa-***的輸入將在前面的PHP中進行更改。我沒有在PHP上使用表格,只使用onClick語句調用respondeQuestao函數。但是這段代碼似乎不起作用。有人有任何建議。在JS輸入檢查中使用變量

$(document).ready(function() { 
    function respondeQuestao(qid,resposta) { 
     var alternativa = document.getElementsByName('input[name = "aternativa-"' + qid ']:checked').value; 
     document.getElementById("demo").innerHTML = 5 + 6; 
     if(alternativa==resposta) { 
      $("#botao-questao"+qid).hide(); 
     }; 
     if(alternativa!=resposta) { 

     }; 
    }; 
}) 
+1

你的意思是使用'querySelector()'而不是'getElementsByName()'嗎?或者考慮到你似乎在使用jQuery,爲什麼你不僅僅在你的選擇器中使用'$()'? – nnnnnn

+0

'input [name =「aternativa-」'+ qid']:checked' is ** not ** a name。這是一個複雜的選擇適合'.querySelector()'就像nnnnnnnnnnnnnnn建議 - 並且是...使用jQuery –

+0

在php上的名稱是name =「alternativa - <?php echo $ questao ['id']?>」我想java找到這個名字。所以querySelector是最好的選擇? –

回答

0

定義jQuery的準備語句中的功能限制了可訪問性 - 它定義外jQuery的準備語句但把它當你需要它。

function respondeQuestao(qid, resposta) { 
    var alternativa = $("INPUT[name^='alternativa-']:checked").val(); 
    $("#demo").html(5+6); 
    if (alternativa == resposta) { 
     $("#botao-questro" + qid).hide() 
    } else { 
     // 
    } 
} 

呼叫內部jQuery的功能:

$(function() { 
    respondeQuestao("id", 11); 
}); 

我希望這有助於。

+0

如果這些是實際的複選框,該怎麼辦? (根據你的設想,不是無線電輸入) –

+0

OP使用過':checked' - 可以反擊它,只是使用了我的東西:) – huzi8t9

+0

嗯,我認爲它會起作用,但它沒有。 –