在当前窗口中使用javascript打开带有参数的url在IE和Chrome上失败
在尝试在当前窗口中使用会话变量作为URL的午餐时,它对Firefox很好,但去掉了Chrome和IE中的参数,但在Firefox中效果与预期一样 我的表单输入字段如下:在当前窗口中使用javascript打开带有参数的url在IE和Chrome上失败,javascript,Javascript,在尝试在当前窗口中使用会话变量作为URL的午餐时,它对Firefox很好,但去掉了Chrome和IE中的参数,但在Firefox中效果与预期一样 我的表单输入字段如下: <input class="ppb-search" placeholder="Search Blog" type="text" id="searchTextDesktop" onKeyPress="SearchText(event, this)"> 在当前窗口中打开包含参数的URL的JavaScript如下所示
<input class="ppb-search" placeholder="Search Blog" type="text" id="searchTextDesktop" onKeyPress="SearchText(event, this)">
在当前窗口中打开包含参数的URL的JavaScript如下所示:
<script type="text/javascript">
function SearchText(e, input) {
var code = (e.keyCode ? e.keyCode : e.which);
if(code == 13) { //Enter keycode
var textSearch = document.getElementById("searchTextDesktop").value;
var url = '$searchPage?search='+textSearch;
//alert("Test open search URL: "+url);
window.location.href=url;
}
}
</script>
函数搜索文本(e,输入){
var代码=(e.keyCode?e.keyCode:e.which);
如果(code==13){//输入keycode
var textSearch=document.getElementById(“searchTextDesktop”).value;
var url='$searchPage?search='+textSearch;
//警报(“测试打开搜索URL:+URL”);
window.location.href=url;
}
}
我还尝试了
window.open(url,“\u self”)代码>@MuradSofiyev-你是对的。我正在解析从vtl到javascript的预期路径,而不是在javascript变量中设置路径。因此,$searchPage变量返回null
解决方案最终是在javascript中设置URL路径,而不是使用后端vtl脚本中设置的$searchPage vtl变量
因此,脚本变成:
`<script type="text/javascript">
var searchPage = "/searchResults/index.dot";
function SearchText(e, input) {
var code = (e.keyCode ? e.keyCode : e.which);
if(code == 13) { //Enter keycode
var textSearch = document.getElementById("searchTextDesktop").value;
var url = searchPage+'?search='+textSearch;
//alert("Test open search URL: "+url);
window.location.href=url;
}
}
</script>`
`
var searchPage=“/searchResults/index.dot”;
函数搜索文本(e,输入){
var代码=(e.keyCode?e.keyCode:e.which);
如果(code==13){//输入keycode
var textSearch=document.getElementById(“searchTextDesktop”).value;
var url=searchPage+'?search='+textSearch;
//警报(“测试打开搜索URL:+URL”);
window.location.href=url;
}
}
`
我猜你没有阻止表单提交,你应该使用encodeURIComponent这是工作问题所在?@Murad Sofiyev-问题是IE和Chrome的?search='+textSearch
被删除了。因此,该参数不会在URL中解析。