jQuery:从数据库加载ID标记
所以我有很多单选按钮,名称相同,但ID不同,我不想在页面加载时选择其中一个。所需按钮的ID将保存到数据库中。我已经为实际的ajax调用尝试了这种解决方案,但可惜没有成功jQuery:从数据库加载ID标记,jquery,database,radio-button,checked,Jquery,Database,Radio Button,Checked,所以我有很多单选按钮,名称相同,但ID不同,我不想在页面加载时选择其中一个。所需按钮的ID将保存到数据库中。我已经为实际的ajax调用尝试了这种解决方案,但可惜没有成功 $.ajax({ type: "POST", url: "load_config.php", dataType: "json", data: dataString, success: function(data) {
$.ajax({
type: "POST",
url: "load_config.php",
dataType: "json",
data: dataString,
success: function(data)
{
var buttonID = "#"+data.buttonID; // data.buttonID = "button5"
$(buttonID).attr("checked", true);
}
});
HTML部分就是这样,除了有更多的按钮外:
<input type="radio" id="button1" name="example" value="value1"/>
<input type="radio" id="button2" name="example" value="value2"/>
<input type="radio" id="button3" name="example" value="value3"/>
<input type="radio" id="button4" name="example" value="value4"/>
<input type="radio" id="button5" name="example" value="value5"/>
再次检查您的JSON返回,您的总体方法是正确的,您可以在此处进行测试: 我敢打赌你的
数据.buttonID
与你想象的不完全一样,或者你的代码没有在文档中运行。ready
,如下所示:
$(function() {
$.ajax({
type: "POST",
url: "load_config.php",
dataType: "json",
data: dataString,
success: function(data)
{
var buttonID = "#"+data.buttonID; // data.buttonID = "button5"
$(buttonID).attr("checked", true);
}
});
});
如果它没有在
document.ready
中运行,并且AJAX调用在元素准备就绪之前完成,那么$(“#按钮5”)
选择器将找不到任何要检查的内容。或者,如果您可以在呈现页面时只在正确的
内呈现一个checked=“checked”
,并完全消除AJAX调用,则更好。尝试检查数据响应:
$(function() {
$.ajax({
type: "POST",
url: "load_config.php",
dataType: "json",
data: dataString,
success: function(data)
{
alert(data['buttonID']);
}
});
});
如果未定义,请检查您的php或我的上一个解决方案,否则请尝试:
$(function() {
$.ajax({
type: "POST",
url: "load_config.php",
dataType: "json",
data: dataString,
success: function(data)
{
$("#"+data['buttonID']).attr("checked",true);
}
});
});
有一次我在将Json返回到jquery时遇到了一个问题,Json字符串返回时带有许多斜杠。。。
如果第一个解决方案出现错误,请尝试此方法(这将报告从服务器返回的字符串,而不解码json):
对不起我的英语。告诉我它是否有效…如果有错误消息,您会收到什么消息?请尝试以下JSFIDLE:。它在FF3.6中对我有效。您的AJAX调用成功了吗?您的数据是否正确?这似乎是正确的,请仔细检查
data.buttonID
是否为button5
,或者您的html中是否有另一个名为button5
的ID
。哦,糟透了。你说得对,data.buttonID返回时未定义。我确信我以前检查过,但后来修改过并打错了。有点尴尬!不过还是要谢谢你:Dit是个打字错误,我完全错过了,不过还是要谢谢你的建议。
$(function() {
$.ajax({
type: "POST",
url: "load_config.php",
dataType: "text",
data: dataString,
success: function(data)
{
alert(data);
}
});
});