如果用户不接受JS确认消息,如何检查上一个选定的单选按钮
How to check the previous selected radio button if an user doesn't accept JS confirm message?
我正在使用Ruby on Rails 3.2.2和jquery-rails-2.0.2。在我的表单中,我有许多单选按钮,如果用户不接受确认消息,我想检查上一个选择的单选按钮。我想我可能会实现如下内容
<%= form.radio_button(:name_1, 'value_1', { :onclick => ('selectRadio(this)') }) %>
<%= form.radio_button(:name_2, 'value_2', { :onclick => ('selectRadio(this)') }) %>
<%= # Other radio buttons %>
<%= form.radio_button(:name_n, 'value_n', { :onclick => ('selectRadio(this)') }) %>
<script type="text/javascript">
function selectRadio(radiobutton) {
var confirm_message = confirm('Are you sure?');
if (confirm_message) {
# Check the selected radio button.
} else {
# Re-check the previous selected radio button.
}
}
</script>
。但我没有"重新检查以前选择的单选按钮"的解决方案。可能吗?如果是这样,如何做到这一点?
您可以使用以下代码块来执行此操作
我假设您考虑的所有单选按钮都有一个共同的类,例如radios
var prev = $(".radios:checked");
$(".radios").change(function() {
if(confirm('Are you sure?')){
prev = $(this);
}else{
prev.prop('checked','checked');
}
});
工作小提琴
参考: $.change $.prop
一种解决方案是在用户检查时存储用户的选择,并在必要时将其还原。
试试下面...
<script type="text/javascript">
// first get checked radio button where myform is your form in which radiobuttons reside
var lastRadio = $("#myform input[type='radio']:checked");
function selectRadio(radiobutton) {
var confirm_message = confirm('Are you sure?');
if (confirm_message) {
lastRadio = $(radiobutton);
# Check the selected radio button.
} else {
lastRadio.attr('checked',true);
# Re-check the previous selected radio button.
}
}
</script>
相关文章:
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 如何将值传递到上一个html页面
- Javascript获取上一个元素的内容
- 禁用旋转木马中的下一个按钮和上一个按钮
- 引用vue.js中v-for中的上一个值
- DOM导航-上一个同级未定义
- 构建JS测试,警报窗口重复上一个Q,而不是问下一个Q
- 如何在用户返回和上一个按钮时刷新下拉列表
- 删除“;上一个“;以及“;下一个“;基于当前幻灯片
- 简单的垂直上一个和下一个按钮代码点击上下移动jQuery
- HTML5历史记录-返回上一个完整页面按钮
- 算法:从数组(javascript/angular)中按当前日期获取上一个和下一个事件
- 如何选择给定类的上一个元素
- 用键盘分页jQuery下一个和上一个控件.触发器('点击')不'不起作用
- 检查上一个(-1&-2)url是否包含字符串
- 如果用户不接受JS确认消息,如何检查上一个选定的单选按钮
- 检查显示的(随机)图像是否与上一个(随机)图像(jQuery和JavaScript)相同
- JavaScript/Ajax-检查另一个页面上的数据是否不同
- 在执行上一个的处理程序之前检查下一个事件以隐藏自动完成
- 如何在React中检查上一个值和下一个值的差异