我有以下代码,可以很好地存储单选按钮的值并写入数据库(HTML - > Javascript - > PHP)。
现在我有一个更新模式,想要填充前一条记录的单选按钮值。我不确定我做错了什么,但是当用户点击更新时,我无法获得单选按钮的默认值。
HTML
<div class="form-group">
<label for="update_flag">Update Flag:</label>
<br>
<label class="radio-inline"><input type="radio" name="update_flag" value="Yes">Yes</label>
<label class="radio-inline"><input type="radio" name="update_flag" value="Maybe">Maybe</label>
<label class="radio-inline"><input type="radio" name="update_flag" value="No">No</label>
</div>
Javascript:JSON.Parse返回YES / NO / MAYBE,我检查它是否正确返回。
function GetUserDetails(id) {
$("#hidden_user_id").val(id);
$.post("ajax/readUserDetails.php", {
id: id
},
function (data, status) {
// PARSE json data
var va = JSON.parse(data);
$("output[name=update_flag]:checked").val(va.flag);
}
);
// Open modal popup
$("#update_user_modal").modal("show");}
PHP:
<?php
// include Database connection file
include("db_connection.php");
// check request
if(isset($_POST['id']) && isset($_POST['id']) != "")
{
// get ID
$id = $_POST['id'];
// Get Details
$query = "SELECT flag,
FROM list WHERE id = '$id'";
if (!$result = mysql_query($query)) {
exit(mysql_error());
}
$response = array();
if(mysql_num_rows($result) > 0) {
while ($row = mysql_fetch_assoc($result)) {
$response = $row;
}
}
else
{
$response['status'] = 200;
$response['message'] = "Data not found!";
}
// display JSON data
echo json_encode($response);
}
else
{
$response['status'] = 200;
$response['message'] = "Invalid Request!";
}
答案 0 :(得分:0)
我认为$("output[name=update_flag]:checked").val(va.flag);
是出错的地方。你应该尝试这样的事情:
$("input[name=update_flag][value=" + radioBtnValueToCheck + "]").prop('checked', true);