首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使提交按钮根据表单得分转到不同的页面?

如何使提交按钮根据表单得分转到不同的页面?
EN

Stack Overflow用户
提问于 2014-02-26 01:57:11
回答 1查看 46关注 0票数 0

我正在创建一个使用java的网站,为了创建一个基于复选框的统计表单,我已经做到了这一点。然而,我有一个问题的部分是submit按钮-它需要配置分数,并带您到其他6个页面中的一个基于分数的测试。所以,如果一个人得到0-1的分数,他们会被重定向到一个页面,如果他们得到2-3的分数,他们会被重定向到另一个页面,依此类推。我已经尝试了很多不同的方法来完成这个任务,但是它破坏了我的java脚本,在那之后我的测试就不能工作了。

代码语言:javascript
复制
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link type="text/css" rel="stylesheet" href="https://fast.fonts.net/cssapi/731cabbe-df4e-4566-ac88-f64a4500c6b6.css"/>

<link href='http://fonts.googleapis.com/css?family=Pathway+Gothic+One' rel='stylesheet' type='text/css'>

<link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/css?family=Josefin+Sans:100,400,700,100italic,400italic,700italic"/>

<link href="styles.css" rel="stylesheet" type="text/css" />

<script type="text/javascript">
  function unhide(divID) {
    var item = document.getElementById(divID);
    if (item) {
      item.className=(item.className=='hidden')?'unhidden':'hidden';
    }
  }
</script>

</head>
<body>
<form>

Window Cleaner <br><br>

<input type=checkbox name=window1>Ammonium Hydroxide<br/>
<input type=checkbox name=window2>Sodium Borate<br/>
<br><br>

Hand Soap<br><br>

<input type=checkbox name=handsoap1>Formaldehyde<br/>
<input type=checkbox name=handsoap2>Fragrance<br/>
<input type=checkbox name=handsoap3>Triclosan<br/>
<input type=checkbox name=handsoap4>DMDM Hydantoin<br/>
<br><br>

All Purpose Cleaner<br><br>

<input type=checkbox name=allpurpose1>Ammonium Hydroxide<br/>
<input type=checkbox name=allpurpose2>Triethanolamine<br/>
<br><br>

Lotion<br><br>

<input type=checkbox name=lotion1>Propylparaben<br/>
<input type=checkbox name=lotion2>Benzyl Alcohol<br/>
<input type=checkbox name=lotion3>Fragrance<br/>
<br><br>

Furniture Polish<br><br>

<input type=checkbox name=fpolish1>Naptha<br/>
<input type=checkbox name=fpolish1>Silicone Fluid<br/>
<input type=checkbox name=fpolish1>Sodium Borate<br/>
<br><br>

Laundry Detergent<br><br>

<input type=checkbox name=laundry1>Nonylphenol Ethoxylates <br/>
<input type=checkbox name=laundry2>Linear Alkylbenzene Sulfonate(LAS)<br/>
<input type=checkbox name=laundry3>Petroleum distillates <br/>
<br><br>

Fabric Softener<br><br> 

<input type=checkbox name=fabricsoftener1>Ethylenediaminetetraaceticacid  <br/>
<input type=checkbox name=fabricsoftener2>Ethyl acetate<br/>
<br><br>

Shampoo<br><br>

<input type=checkbox name=shampoo1>Sodium Laureth Sulfate<br/>
<input type=checkbox name=shampoo2>Fragrance<br/>
<input type=checkbox name=shampoo3>Benzyl Salicylate<br/>
<input type=checkbox name=shampoo4>DMDM Hydantoin<br/>
<br><br>

Sanitizer<br><br>   

<input type=checkbox name=sanitizer1>Sodium Hypochlorite<br/>
<input type=checkbox name=sanitizer2>Alcohol<br/>
<input type=checkbox name=sanitizer3>Fragrance<br/>
<br><br>

Aerosol Deodorizers<br><br> 

<input type=checkbox name=deodorizers1>Fragrance<br/>
<input type=checkbox name=deodorizers2>Sodium Borate<br/>
<input type=checkbox name=deodorizers3>Benzisothiazolinone<br/>
<br><br>

Floor Cleaner<br><br>

<input type=checkbox name=floorcleaner1>Sodium Salts<br/>
<input type=checkbox name=floorcleaner2>Methylisothiazolinone<br/>
<input type=checkbox name=floorcleaner3>Ethoxyethanol<br/>
<input type=checkbox name=floorcleaner4>Fragrance<br/>
<br><br>

Bleach<br><br>

<input type=checkbox name=bleach1>Chlorine<br/>
<input type=checkbox name=bleach2>Sodium Hypochlorite<br/>
<br><br>

Dishwasher Detergent<br><br>

<input type=checkbox name=dishwasher1>Diethanolamine<br/>
<input type=checkbox name=dishwasher2>Quaternium-15 <br/>
<input type=checkbox name=dishwasher3>Zinc Carbonate<br/>
<input type=checkbox name=dishwasher4>Sodium Hypochlorite<br/>
<br><br>

Spot Cleaner<br><br>

<input type=checkbox name=spotcleaner1>2-Butoxyethanol<br/>
<input type=checkbox name=spotcleaner2>Sodium Salts<br/>
<input type=checkbox name=spotcleaner3>Sodium Borate<br/>
<br><br>

Counter Cleaner<br><br>

<input type=checkbox name=countercleaner1>Mipa-Borate <br/>
<input type=checkbox name=countercleaner2>Ammonium Hydroxide<br/>
<br><br>

Body Wash<br><br>

<input type=checkbox name=bodywash1>Fragrance<br/>
<input type=checkbox name=bodywash2>DMDM Hydantoin<br/>
<input type=checkbox name=bodywash3>Propylparaben<br/>
<br><br>

Even More Dangerous Chemicals to look for <br><br>

<input type=checkbox name=a1>Hydrozincite<br/><br>
<input type=checkbox name=a2>Polyacrylates<br/><br>
<input type=checkbox name=a3>Antifoam<br/><br>
<input type=checkbox name=a4>Polyethylene Glycol<br/><br>
<input type=checkbox name=a5>Buffer<br/><br>
<input type=checkbox name=a6>Ethanolamine<br/><br>
<input type=checkbox name=a7>Glycol Ethers<br/><br>
<input type=checkbox name=a8>Atrazine<br/><br>
<input type=checkbox name=a9>Glutaral<br/><br>
<input type=checkbox name=a10>Alcohol Ethoxylates <br/><br>
<input type=checkbox name=a11>Ethanolamine<br/><br>
<input type=checkbox name=a12>Petroleum<br/><br>
<input type=checkbox name=a13>Alumina<br/><br>
<input type=checkbox name=a14>Polysorbate-20 <br/><br>
<br>
<input type=checkbox name=b1>Ammonium Hydroxide<br/><br>
<input type=checkbox name=b2>Sodium Tripolyphosphate<br/><br>
<input type=checkbox name=b3>2-Butoxyethanol<br/><br>
<input type=checkbox name=b4>Myristalkonium Saccharinate<br/><br>
<input type=checkbox name=b5>Di-(Palm Carboxyethyl)<br/><br>
<input type=checkbox name=b6>Alcohol Alkoxylates<br/><br>
<input type=checkbox name=b7>Methoxydiglycol<br/><br>
<input type=checkbox name=b8>Poloxamer 124 <br/><br>
<input type=checkbox name=b9>Benzalkonium Chlorides<br/><br>
<input type=checkbox name=b10>Hexoxyethanol<br/><br>
<input type=checkbox name=b11>Phosphates<br/><br>
<input type=checkbox name=b12>Methylisothiazolinone<br/><br>
<input type=checkbox name=b13>Silicon Compounds<br/><br>
<input type=checkbox name=b14>Triethanolamine<br/><br>

<BR>
<input type=button onclick="doIt(this.form)" value="SUBMIT">       

<BR><BR>      

<BR>YOUR FINAL HOUSEHOLD TOXICITY SCORE: <input size=2 type=text name=clicked value=0 onfocus=blur()>
</form>
<script>
function doIt(_f)
{
  var _countCK=0;
  var _countTL=0;
  for(var _obj = _f.firstChild; _obj ; _obj=_obj.nextSibling)
  {
    if(_obj.name!=undefined)
    {
      if(_obj.type=="checkbox")
      {
        _countTL++;
        if(_obj.checked)
          _countCK++;
      }
    }
  }
  _f.clicked.value=_countCK;
  _f.notclicked.value=0+_countTL-_countCK;
}
</script>

 </body>
</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-26 04:19:00

在表单提交之前更改表单的action (在doIt单击处理程序中)。

代码语言:javascript
复制
var f = document.getElementById('myForm'); // put an ID on your form tag :)
if(score <= 1) {
    f.action = '/one-page';
} else if(score <= 3) {
    f.action = '/another-page';
}

如果您只想重定向浏览器而不实际将表单提交到指定的页面,请使用window.location而不是设置表单操作:

代码语言:javascript
复制
window.location = '/one-page';
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22030178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档