【问题标题】:Need help cancelling a web alert需要帮助取消网络警报
【发布时间】:2014-02-25 14:18:29
【问题描述】:

我有一个单选按钮的网络警报,说你确定你想要这样那样。 当我单击确定时,它很好,但是当我单击取消时,它仍然会将我带到success.html,而不是取消它。

这是单选按钮的验证。

function validateForm() {



var checked = null;
var inputs = document.getElementsByName('Exam_Type');
for (var i = 0; i < inputs.length; i++) {
         if (inputs[i].checked) {
           checked = inputs[i];
   }
}
if(checked==null)
{
    alert('Please choose an exam level.');
    return false;
}
else{
      confirm('You have chosen '+checked.value+' is this correct?');
}

如果需要,这些是单选按钮。

<table>
<tr>
    <td>
        <input type="radio"
        id="Exam_Type" 
        name="Exam_Type" 
        value="GCSE" />: GCSE
    </td>
    <td>
        <input type="radio"
        id="Exam_Type" 
        name="Exam_Type" 
        value="A2" />: A2
    </td>
    <td>
        <input type="radio"
        id="Exam_Type" 
        name="Exam_Type"
        value="AS" />: AS
    </td>
</tr>
</table>

【问题讨论】:

  • 代码重定向到success.html在哪里?显示更多代码...
  • 你可以试试´===´
  • @JTeisseire 这里是引用success.html的代码
  • 旁注:ID 必须是唯一的,因为您使用的是id="Exam_Type"
  • 是的哈哈,我确实意识到现在你已经指出了这一点,但是它不会造成问题,我想我可以这样离开它。

标签: javascript validation button radio


【解决方案1】:

这样的东西应该可以工作

else{
     var check = confirm('You have chosen '+checked.value+' is this correct?');
     if (check == true) do something;
     else do nothing;
}

【讨论】:

  • 我现在知道您的意思了。
  • 可能会更好:else return false;
  • 我不能这样做,因为我正在使用 else 语句来显示警报消息,询问用户他们选择的内容是否正确
  • 我的意思是此警报消息之后的操作。 var check 已经是这条消息。 if (check == true) 是用户点击确定按钮确认。
  • 哦,我明白你的意思了,对不起我的愚蠢,那里有点慢。
猜你喜欢
  • 1970-01-01
  • 2012-03-08
  • 1970-01-01
  • 1970-01-01
  • 2020-01-28
  • 1970-01-01
  • 2019-07-09
  • 1970-01-01
  • 2016-05-11
相关资源
最近更新 更多