我有一个带有更改事件的按钮组。在更改时,事件调用ajax帖子来保存值。如果出现错误,我希望将按钮组设置回初始状态。
所以我将初始状态保持为页面加载变量(intital)。 如果ajax调用失败,在“错误”函数中,我使用'initial'来检查相应的按钮。
问题是图形按钮组没有恢复到初始值。 更糟糕的是,当我对两个按钮发出警报时,我看到已检查的attr已正确设置,但未在屏幕上反映出来。
帮助表示感谢,因为我搜索了很多关于此的内容: - (
JS代码:
//keep initial buttonset checked value
var intial = $( '#radio :checked');
//on buttonset change, do a ajax post, and in case of failure, set original value back
$( "#radio" ).buttonset().change(function(){
$.post("/to/somewhere",{showList:'show', id:123})
.error(function(){
if (intial.val() == "show"){
$('#visibleYes').attr("checked", true);
}
else {
$('#visibleNo').attr("checked", true);
}
})
})
});
html代码
<div id="radio">
<input class="yesNoRadio" type="radio" id="visibleYes" name="visible" value="show" checked="checked"/><label for="visibleYes">Show</label>
<input class="yesNoRadio" type="radio" id="visibleNo" name="visible" value="hide" /><label for="visibleNo">Hide</label>
</div>