2012-08-17 65 views
-1

作爲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> 
+1

如果Mac和高級選擇什麼或Linux和高級?你有四個以上的選項。除非你在選擇Mac或Linux時隱藏高級收音機。 – 2012-08-17 00:04:34

+0

你想提交這個表單與Ajax?否則重定向對JavaScript/jQuery無用。您將向服務器發送數據,該服務器將處理表單值。在這一點上,我們會發送一個像''__POST ['redirecto']'這樣的值,它看起來像'http:// www.mypage.com/somewhere/something.php'。我們將使用它來做'header(「Location:」。$ _ POST ['redirecto']);' – Ohgodwhy 2012-08-17 00:06:05

+0

@John Hartsock Mac/Linux沒有高級選項。他們隱藏起來。 – Justin 2012-08-17 00:06:58

回答

0

我想添加一個按鈕,並做表格的遞交的東西:

$(".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; 
});​ 

FIDDLE

+0

已經有一個按鈕。我只是想把事情保持得相當緊湊。 剛剛測試過你的代碼,它正在工作。我會盡力讓所有的選項正常工作。 感謝您的幫助。如果我得到這一切工作,我會接受這個答案:) – Justin 2012-08-17 00:27:25