Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于提交基于多个变量重定向的表单的JavaScript_Javascript_Forms_Variables_Redirect - Fatal编程技术网

用于提交基于多个变量重定向的表单的JavaScript

用于提交基于多个变量重定向的表单的JavaScript,javascript,forms,variables,redirect,Javascript,Forms,Variables,Redirect,我肯定这只是我错过了一些非常明显的东西,但我已经坐在这里好几个小时了,一直在胡思乱想,仍然没有得出任何结论。我将要使用的表格的修订版本是: <html> <head> <script language="javascript;" type="text/javascript"> function setAction() { var country = document.getElementById("FormCtrl_1").

我肯定这只是我错过了一些非常明显的东西,但我已经坐在这里好几个小时了,一直在胡思乱想,仍然没有得出任何结论。我将要使用的表格的修订版本是:

<html>
  <head>
    <script language="javascript;" type="text/javascript">
    function setAction() {
        var country = document.getElementById("FormCtrl_1").value;
        var business = document.getElementById("FormCtrl_2").value;
        if (country === "Afghanistan" && business === "Yes") {
            window.location = "http://www.google.com";
        }
    }
    </script>
</head>
  <body>
    <form>
      <div class="row"> <label for="FormCtrl_1">Where are you going?</label>
        <select id="FormCtrl_1" name="FormCtrl_1">
          <option value="Afghanistan">Afghanistan</option>
          <option value="Albania">Albania</option>
          <option value="Algeria">Algeria</option>
        </select>
      </div>
      <div class="row">
        <fieldset>
          <legend>Is this a business trip?</legend>
          <span>
            <input value="Yes" id="FormCtrl_2_1" name="FormCtrl_2" type="radio">
            <label for="FormCtrl_2_1">Yes</label></span>
            <span>
              <input value="No" id="FormCtrl_2_2" name="FormCtrl_2" type="radio">
              <label for="FormCtrl_2_2">No</label>
            </span>
          </fieldset>
      </div>
      <div class="row">
        <input value="Submit" onclick="setAction()" type="button">
      </div>
    </form>
  </body>
</html>

函数setAction(){
var country=document.getElementById(“FormCtrl_1”).value;
var business=document.getElementById(“FormCtrl_2”).value;
如果(国家==“阿富汗”和商业==“是”){
window.location=”http://www.google.com";
}
}
你要去哪里?
阿富汗
阿尔巴尼亚
阿尔及利亚
这是商务旅行吗?
对
不

这是一个混搭的几个不同的迭代,看看其他的问题和答案,所以完全有可能,在某一点上,我比我现在更接近,但这一切刚刚开始看起来像胡言乱语,所以我说“叔叔”,并问你一些很棒的人。提前谢谢

从提交按钮中删除
.onclick
事件,而使用表单元素上的
.onsubmit
事件。像这样:

<form onsubmit="return setAction()" method="post" action="">
  <div class="row">
    <label for="FormCtrl_1">Where are you going?</label>
    <select id="FormCtrl_1" name="FormCtrl_1">
      <option value="Afghanistan">Afghanistan</option>
      <option value="Albania">Albania</option>
      <option value="Algeria">Algeria</option>
    </select>
  </div>
  <div class="row">
    <fieldset>
      <legend>Is this a business trip?</legend>
      <span>
        <input value="Yes" id="FormCtrl_2_1" name="FormCtrl_2" type="radio">
        <label for="FormCtrl_2_1">Yes</label>
      </span>
      <span>
        <input value="No" id="FormCtrl_2_2" name="FormCtrl_2" type="radio">
        <label for="FormCtrl_2_2">No</label>
      </span>
    </fieldset>
  </div>
  <div class="row">
    <input value="Submit" type="submit" />
  </div>
</form>
JSFIDLE示例:


JSFIDLE注意:除非您使用Google以外的URL,否则重定向将不起作用。我需要您陈述您的问题?为什么它似乎不起作用?我试图得到一个if语句,如果用户同时选择了阿富汗和Yes,它会将用户重定向到另一个页面(占位符是谷歌)。谢谢,我知道这是一个简单的东西,我只是错过了,因为我盯着它看了太久。很有魅力
function setAction() {
    var country = document.getElementById("FormCtrl_1").value;
    var business = document.getElementById("FormCtrl_2_1").checked;

    if (country === "Afghanistan" && business === true) {
        window.location = "http://www.google.com";
    }

    return false;
}