【发布时间】:2015-07-04 15:38:20
【问题描述】:
在我的网站上,用户选择了一个人,做出选择后,它会在下方填充有关该患者的人口统计数据,但为用户提供了更改每个人口统计值的选项。我有一个“Prep RN”的 html 选择语句,该语句在加载表单时从 RN 表中填充,但是当我选择患者时,我无法将选择更改为存储在中的 RN数据库并包含在列表中:
$.ajax({
url: 'php/pullselectedpatient.php',
type: 'POST',
dataType: 'json',
cache: false,
data: {Patient_UID: tempPatient_UID},
success: function(data) {
if (data.Prep_RN == 'Unassigned') {
//if unassigned, set option to unassigned
$('#selectpreprn').val('Unassigned');
} else {
//if assigned, change to selected RN
$('#selectpreprn').val(data.Prep_RN);
},
error: function() {
alert("ajax call failed.");
}
});
此代码成功填充选项列表,但如果它是问题的一部分,这里是:
<label for='selectpreprn'>Prep RN: </label>
<select id="selectpreprn">
<option value="empty"></option>
<?php
require('php/pullrns.php');
//loop and add the patients to the drop down list
foreach($result_rns->fetch_all(MYSQLI_ASSOC) as $row) {
echo "<option value='", $row['RN_UID'], "'>", $row['RN_UID'], "</option>";
}
?>
</select>
这会导致选择填充“空白”、“未分配”,然后是 3 个可供选择的名称。
另外,这是我第一次在这个网站上发帖(这非常有帮助),所以我希望我提供了一切。我至少花了 3 个小时尝试不同的方法来完成这项工作。
重申一下,问题是在选择患者时它没有选择选择标签中的选项。它只是保持空白。
【问题讨论】:
-
让我们调试它,使用
console.log(JSON.stringify(data));检查你是否得到了正确的属性。您可以添加您在问题中看到的结果。 -
“数据”的实际内容是什么?
-
想通了 - 实际上,当然,在发完这篇文章并转到页面的下一部分之后,我想通了。我已经将此块复制并粘贴到另一个部分,并且在该部分中,我没有更改选择器并且它被 null 覆盖,现在它可以完美运行。我的人生故事!
标签: javascript php html select tags