0
<html>  
    <input type='checkbox' id='1' name='checkMr[]' value='1' />       
    <input type='checkbox' id='2' name='checkMr[]' value='2' />            
    <input type='checkbox' id='3' name='checkMr[]' value='3' />         
    <input type='checkbox' id='4' name='checkMr[]' value='4' />        

    <a id="savedoctorschedule" style="float: right;" class="clyes clbutton clbtnSave">Save</a>       
</html> 

<script>
$j("#savedoctorschedule").bind("click", function () { 
    $j.ajax({
        url: "schedulemr.php",
        type: "post",
        data: { schmrid: $j("#sel_mr").val(), 
        schedocid: $j("#checkMr[]").val(), 
        schedate: $j("#date1").val(), },
        success:function(response){         
        }
</script>

<?php
include '../includes/include.php';
$schmrid = $_POST['sel_mr'];
$schedate = $_POST['date1'];
$schedocid = $_POST['checkMr'];
foreach($schedocid as $a => $b)
{
   $sql="INSERT INTO tbl_mr_schedule(doctor_idscheduled_date) 
   VALUES ('".$schedocid[$a]."','".$schmrid."','0','".$date."','".$schedate."');";
   mysql_query($sql) or die(mysql_error());
}
header('Location:../visitplan/');
?>

jQueryを使用して、チェックされたチェックボックスのすべてのIDが必要です。チェックボックスはn数字の場合があります。チェックされたチェックボックスの値をデータベースに挿入したいのですが、レコードの数はチェックされたチェックボックスの数に依存します。これは、PHP をサーバー側スクリプトとして使用することになります。

どうすれば修正できますか?

4

4 に答える 4

4

以下を試してください、

$(':checkbox[name="checkMr[]"]:checked') //returns you the list of selected checkbox

その後、あなたはできる、

var selectedID = [];
$(':checkbox[name="checkMr[]"]:checked').each (function () {
    selectedID.push(this.id);
});

デモ

于 2012-05-08T21:02:01.433 に答える
2
$("#savedoctorschedule").click(function(e){
    e.preventDefault();
    var sList = "";
    $('input[name="checkMr[]"]').each(function () {
        if(this.checked){
            sList += "(" + $(this).attr('id') + ")";
        }
    });
    alert(sList);
    }
);​

フィドルを見つけてください

于 2012-05-08T21:42:46.460 に答える
1

あなたの文書はいくつかの理由で無効です。明らかなこと (doctype/ <body>/etc がないこと) をスキップすると、id 属性は数字で始まらない場合があります。id="1"無効です。のように数値以外のプレフィックスを使用するid="check-1"か、チェックボックスの ID を割り当てる必要valueがあります。

これを修正したら、次を使用して、チェックされているすべてのチェックボックスを見つけ、それらの値 (または使用する属性) を取得できます。

$("input:checked").map(function () { return $(this).val(); });
于 2012-05-08T20:59:25.800 に答える
0

IDは数字で始めることはできません。IDを更新したら、attr('value')または.val()を使用して、入力に関連付けられた値を取得します。

于 2012-05-08T21:02:22.937 に答える