私はチェックボックスの束を持つHTMLフォームを持っています。各チェックボックスは、このように説明されています
echo "<td>"
echo "<input type = \"checkbox\" name=\"name\" value=\"$name\">";
echo "<input type = \"hidden\" name=\"user\" value=\"$user\">";
echo "</td>"
は、その後、私は送信ボタンを持っているいくつかのJavaScriptを実行しますクリックしたとき:
echo "<input type=\"button\" name =\"send\" value=\"Submit\" onclick=\"get_checked(form)\">";
今私のjavascript:
function get_checked(form){
$("input[type='checkbox']").change(function() {
if($(this).is(':checked')){
$(this).find("input[name]").each(function(index, node){
formData[node.name] = node.value;
alert (node.name + node.value);
});
}
});
}
私が見つけたいですすべてのチェックボックスをオンにして、チェックボックスの各名前と値のペアを表示します。
$(':checkbox:checked').each(function(i){
testname_checked[i] = $(this).val();
alert(testname_checked[i]);
});
任意のアイデア:私は.each使用する場合は、この作品不適切ので、しかし、それは何として機能していないが警告されますと、私は$(this)を使用するかもしれないと思いますか?
$(これ).find ...は、チェックボックスの子孫である要素を探します(私は疑いがあります)。 – James
フォームを送信すると、イベントハンドラが接続されており、フォーム送信をキャンセルしません。チェックボックスの子は何ですか? – epascarello
クリックハンドラでは、変更ハンドラをアタッチしているようです。それは正しいことではありません。変更ハンドラを添付するだけで済みます。 –