在php中使用onchange事件

时间:2013-12-01 10:31:08

标签: javascript php html

所以我试图在php中使用onchange事件,但它没有用,但我需要使用php从我的db中获取数据。所以如何获得$ patient [1]和$ patient [2]我选择一个选项时javascript中的变量?

if(!isset($_GET['enfermeiro'])){
    echo'<form action="index.php?opcao=user_update_succ" method="post" name="frmupdate">
            <p><select name="pacients" id="patients_list" onchange="alert("something")">
                <optgroup label="patients">
                ';for($i=0;$i<$pacients_number;$i++){
                    $patient=mysql_fetch_array($table_pacients);
                    echo '<option value="'.$patient[0].'">'."(".$patient[0].")(".$patient[1].")(".$patient[2].')</option>';

                };



                echo'</optgroup>
            </select><input type="checkbox" name="update_patient" value="1"></p>
            <br><p><select name="medics">
                <optgroup label="medics">
                    ';for($k=0;$k<$medics_number;$k++){
                        $medic=mysql_fetch_array($table_medic);
                        echo '<option value="'.$medic[0].'">'."(".$medic[0].")(".$medic[1].")(".$medic[2].')</option>';
                    };
                echo '</optgroup>
            </select><input type="checkbox" name="update_medic" value="1"></p>
            <input type="submit" value="update user">
        </form>';
}

1 个答案:

答案 0 :(得分:0)

<强> 1。您应该在选项中插入所需的数据作为属性。 PHP

       <select name="pacients" id="patients_list" >
            <optgroup label="patients">
            ';for($i=0;$i<$pacients_number;$i++){
                $patient=mysql_fetch_array($table_pacients);
/*  look here */  echo '<option value="'.$patient[0].'" data-pat1="'.$patient[1].'" data-pat2="'.$patient[2].'" >'."(".$patient[0].")(".$patient[1].")(".$patient[2].')</option>';

            };
            echo'</optgroup>
        </select>

2 - 在更改事件时,您的变量是所选选项的属性。 JS

$('#patients_list').on('change',function(){  
        var selectedPatient1 = $('#patients_list option:selected').attr('data-pat1'); // $patient[1]
        var selectedPatient2 = $('#patients_list option:selected').attr('data-pat2'); // $patient[2]
  });

PS:我在这个例子中使用了jQuery ......我希望你能接受...