我有一个选择框,每一行都是一个项目。我想单击一个项目并将我重定向到该项目页面。在每一页上,我都有相同的选择框。我的选择如下所示:
select class="select_box" name="state" style="width:200px;float:right;margin-right:45px;">
<? for(var i=0;i<proiecte[0].length;i++){?>
<option class="optiune" value="<?=proiecte[0][i]?>"><?=proiecte[0][i]?></option>
<? }?>
</select>
选择框看起来不错。
现在,我的项目链接如下所示:
https://script.google.com/a/macros/COMPANY/s/AKfycbytWWGfWbOj_-Qi6eXwZraMgAS6xa0blmRfXVzLJV4/dev?page=project&projectName=Name%20Of%20Project
如您所见,我的 URL 中有 2 个参数。当我从选择框中选择一个选项时,第一个不需要更改,但第二个必须更改。使用 jQuery,当我单击一个选项并重定向到该页面时,我成功地更改了项目。
$(document).ready(function(){
$(".select_box").change(function(){
console.log('Selected value: ' + $(this).val());
var url = "<?=getPathFromUrl(getScriptUrl());?>?page=project&projectName=";
url += encodeURIComponent($(this).val());
//window.location.replace(url);
window.location.href = url; //i tried what TeilZeitMensch suggested
});
});
我的问题是这个。我单击一个项目名称,然后我被重定向到该页面,而不会追逐我的URL。例如,我在项目1中,我的URL是这样的:....projectName=project1
。我单击另一个项目,该项目中的信息会加载,但即使我更改了参数,URL 也不会更改。我的下一个问题也是最大的问题是我只能选择一个项目。单击project2后,它会加载信息和选择选项。但是如果我选择 project3,我会得到一个空白页。我尝试了各种项目组合,每次更改时总是得到一个白页。
应该说,我正在使用Google Apps Script。
编辑:我使用控制台.log,在我使用window.location.href = url;
并且URL是正确的之后。我只在链接栏中显示它时遇到问题。
编辑2:我找到了解决方案:我把它放在我的HTML中。
<form id="projNavForm" action="<?=getPathFromUrl(getScriptUrl());?>" method="GET">
<input type="hidden" name="page" value="project"/>
<input type="hidden" name="projectName" value="" id="projectName"/>
</form>
我使用了这个jQuery:
$(".select_box").change(function(){
if($(this).val() != 'None'){
$("#projectName").val($(this).val());
$("#projNavForm").submit();
}
对于 url 的"真正更改",您可以使用:
window.location.href = url;