簡體   English   中英

單擊單選按鈕時的jQuery帖子

[英]jQuery post when click on radio button

我對單選按鈕中的jQuery post有問題。 當我使用jQuery AJAX發布單擊單選按鈕時,無法保存單選按鈕值

這是我的表格:

<?php
  $jaw = mysql_query("SELECT * FROM jwb");
  $j=mysql_fetch_array($jaw);
?>
<div id="id_jwb"><?php echo $j['id_jwb'];?></div><?php echo $j['jwb'];?><br>
<input type="radio" name="jwb1" value="A" id="jwb1" <?php if($j['jwb']=='A'){echo 'checked';}?>>A<br>
<input type="radio" name="jwb1" value="B" id="jwb1" <?php if($j['jwb']=='B'){echo 'checked';}?>>B<br>
<input type="radio" name="jwb1" value="C" id="jwb1" <?php if($j['jwb']=='C'){echo 'checked';}?>>C<br>

這是我的jQuery帖子:

$("#jwb1").click(function(){
                var jawaban = $("input[name=jwb1]:checked").val();
                var id_jawaban = $("#id_jwb").html();
                $.post('update_jwb.php',{ jwb: jawaban, id_jwb: id_jawaban });
});

這是我插入db的php文件:

$con = mysql_connect($host, $username, $password);
mysql_select_db($database, $con);

$jwb = $_POST['jwb']; // $_POST['jwb'] dari jQuery-post
$id = $_POST['id_jwb'];

$sql = "UPDATE jwb SET jwb='{$jwb}' WHERE id_jwb='$id'";
$query = mysql_query($sql, $con);
if($query){
    echo 'sukses';
}
else{
    echo 'gagal';
}

問題出在您的html / jQuery上。 您正在嘗試使用單選按鈕的ID,但是所有三個單選按鈕都具有相同的ID值,因此瀏覽器不知道您要獲取哪個值。 您可以使用以下jQuery來解決此問題,該jQuery使用輸入名稱而不是id並僅獲取選中的單選按鈕的值。

$("input[name=jwb1]").click(function(){
    var jawaban = $("input[name=jwb1]:checked").val();
    var id_jawaban = $("input[name=jwb1]:checked").html();
    $.post('update_jwb.php',{ jwb: jawaban, id_jwb: id_jawaban });
});

我也注意到這些輸入沒有任何內部HTML,因此...

$("input[name=jwb1]:checked").html()

...將不會返回任何內容,因此“ id_jwb”發布值將始終為空。 這意味着您幾乎可以擺脫這個職位價值。

如果要提交所選單選按鈕的值AND ID,則需要使每個單選按鈕具有唯一的ID。 然后使用以下jQuery:

$("input[name=jwb1]").click(function(){
    var jawaban = $("input[name=jwb1]:checked").val();
    var id_jawaban = $("input[name=jwb1]:checked").attr("id");
    $.post('update_jwb.php',{ jwb: jawaban, id_jwb: id_jawaban });
});

每個id值在文檔中只能使用一次。 如果為多個元素分配了相同的ID,則使用該ID的查詢將僅選擇DOM中的第一個匹配元素。 但是,不應依賴這種行為。 包含多個使用相同ID的元素的文檔無效。

因此,我建議您使用帶有輸入標記的類,並使用類選擇器來附加click事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM