gpt4 book ai didi

java - 使用 javascript 重定向到新 URL

转载 作者:行者123 更新时间:2023-12-02 09:41:03 24 4
gpt4 key购买 nike

我正在尝试根据用户从下拉列表中选择的内容将我的页面重定向到不同的网址。如果用户选择“A”,则 url 是表单操作属性中的默认 URL,但如果用户选择“B”,我想将其重定向到不同的 url。

我的问题是,无论我做什么,它总是重定向到默认 URL(即 oldUrl.do),即使我从下拉列表中选择“B”。

我该怎么做才能将其指向 newUrl.do?

注意:我正在使用 Struts 1.2 并在 IE8 上进行测试。

我的jsp页面:

<form name="myForm" method="post" action="oldUrl.do" id="myForm">

<select name="modeOfT" id="choice"><option value="A">A</option>
<option value="A">A</option>
<option value="B">B</option>
</select>

<input type="submit" name="submitBtn" onclick="submitForm()">
</form>

Javascript函数:

function submitForm(){
var form = document.getElementById("myForm");
var mode = document.getElementById("choice");
if(mode.value == "B"){
$(form).attr("action", "newUrl.do");
}
}

以下是我尝试过的其他方法,它们仍然将我带到“oldUrl.do”:

  1. document.location.href("newUrl.do");

  2. window.location.href="newUrl.do";

  3. top.location.href="newUrl.do";

  4. parent.location.href="newUrl.do";

  5. window.location.replace("newUrl.do");

  6. window.location="newUrl.do";

最佳答案

您不应该处理点击事件。为了处理正在提交的表单,您应该使用提交事件,出于这个原因和许多其他原因(人们可以使用 Enter,他们可以在聚焦于提交按钮时点击空格)

工作示例 http://jsfiddle.net/xv3Uf/2/

HTML

<form name="myForm" method="post" action="oldUrl.do" id="myForm" onsubmit="return submitForm()" >

JS

function submitForm(){
var form = document.getElementById("myForm");
var mode = document.getElementById("choice");
if(mode.value == "B"){
form.action = "newUrl.do";
}
}

既然您已经在使用 jQuery,为什么不喝点好酒并停止在 HTML 中设置 JS 处理程序的启蒙实践呢? http://jsfiddle.net/xv3Uf/3/

<form name="myForm" method="post" action="oldUrl.do" id="myForm">

JS

$('#myForm').submit(function(e){
if ( $('#choice').val() === 'B') {
this.action = 'newUrl.do'
}
});

关于java - 使用 javascript 重定向到新 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14838434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com