基于收音机/选择选项的重定向
问题描述:
作为JavaScript新手,我很难过。但我试图:P基于收音机/选择选项的重定向
基本上我需要做的是重定向到基于下面的表格中选择的选项的网址。总共有4张支票。
- 如果Windows &高级选择,重定向到一个
- 如果选择Windows和基础,重定向到B
- 如果Mac和基本的选择,重定向到C
- 如果Linux和基本是选择重定向到d
不过,我不能肯定我将如何能够抓住每一个单选按钮,并选择选项的具体名字,更不用说了解他们是否进行检查,并进行CH上面列出的ecks。
如果有人能指出我正确的方向,它将不胜感激。谢谢。
<form action="process_form.php" class="TTWForm" method="post" novalidate="">
<div id="field3-container" class="field f_100">
<label for="field3">Your Operating System</label>
<select name="field3" id="field3" required="required">
<option id="field3-1" value="Windows"> Windows </option>
<option id="field3-2" value="Mac"> Mac </option>
<option id="field3-3" value="Linux"> Linux </option>
</select>
</div>
<div id="field2-container" class="field f_100 checkbox-group required">
<label for="field2-1">Version</label>
<div class="option clearfix">
<input type="radio" name="field2[]" id="field2-1" value="Basic">
<span class="option-title"> Basic </span> <br>
</div>
<div class="option clearfix" id="optional">
<input type="radio" name="field2[]" id="field2-2" value="Advanced">
<span class="option-title"> Advanced </span> <br>
</div>
</div>
</form>
答
我想添加一个按钮,并做表格的递交的东西:
$(".TTWForm").on('submit', function(e) {
e.preventDefault();
var field2 = $("#field2-1").is(':checked') ? 'Basic' : $("#field2-2").is(':checked') ? 'Advanced' : null,
field3 = $("#field3").val();
if (!field2) {
alert('Select a version!');
return;
}
var url = 'http://mysite.com/' + field2 + '/' + field3 + '/';
document.location.href = url;
});
+0
已经有一个按钮。我只是想把事情保持得相当紧凑。 刚刚测试过你的代码,它正在工作。我会尽力让所有的选项正常工作。 感谢您的帮助。如果我得到这一切工作,我会接受这个答案:) – Justin 2012-08-17 00:27:25
如果Mac和高级选择什么或Linux和高级?你有四个以上的选项。除非你在选择Mac或Linux时隐藏高级收音机。 – 2012-08-17 00:04:34
你想提交这个表单与Ajax?否则重定向对JavaScript/jQuery无用。您将向服务器发送数据,该服务器将处理表单值。在这一点上,我们会发送一个像''__POST ['redirecto']'这样的值,它看起来像'http:// www.mypage.com/somewhere/something.php'。我们将使用它来做'header(“Location:”。$ _ POST ['redirecto']);' – Ohgodwhy 2012-08-17 00:06:05
@John Hartsock Mac/Linux没有高级选项。他们隐藏起来。 – Justin 2012-08-17 00:06:58