如果有人可以提供帮助,我们将不胜感激!
我有一个HTML表单,下拉表示您所处的状态。
然后我有一个JavaScript函数来确定所选的状态,并相应地重定向用户。
function pickstate()
{
if(document.drop_list.State.value == "AR" ){
document.drop_list.action = "www.theurl.com";
document.drop_list.submit();
}
}
我的问题是:我可以使用此方法(如果是这样,如何)将状态传递给下一个表单,以便在重定向用户时,下拉列表显示他们选择的状态。
我知道如何使用PHP和POST执行此操作,但这不是发布,它只是根据状态重定向到正确的URL,并且由于20个左右的状态将使用相同的表单,我不想要让用户再次选择他们的状态。
我使用此方法的原因并不是每个人都会被重定向 - 许多州将保留在首次显示的表单上。这就是我无法使用POST的原因。
帮助!谢谢。
答案 0 :(得分:1)
您可以向网址添加哈希
function pickstate()
{
var stateVal = document.drop_list.State.value;
switch(stateVal) {
case "AR"
document.drop_list.action = "www.theurl.com/#"+stateVal;
break;
case "IT"
document.drop_list.action = "www.theurl.com/#"+stateVal;
break;
}
document.drop_list.submit();
}
然后下一个表单可以使用传递的哈希
来选择状态window.location.hash; // eg. will be equal to #AR or #IT
答案 1 :(得分:0)
您可以将值存储在本地存储中。
function pickState() {
if (document.drop_list.State.value == "AR") {
document.drop_list.action = "www.theurl.com";
localStorage.setItem('selectedState', 'AR');
document.drop_list.submit();
}
}
然后添加另一个设置值的函数。
function setState() {
var storedSelectedState = localStorage.getItem('selectedState');
if (storedSelectedState) {
document.drop_list.State.value = storedSelectedState;
}
}