使用JavaScript在当前Windows中打开带有参数的URL在IE和Chrome上失败



在尝试使用当前窗口中的会话变量午餐时,它对firefox的工作正常,但可以从Chrome和IE中的参数中脱离,但是在Firefox中可以按预期工作。

所以,我有类似的表单输入字段:

<input class="ppb-search" placeholder="Search Blog" type="text" id="searchTextDesktop" onKeyPress="SearchText(event, this)">

和JavaScript以打开当前窗口中具有参数的URL的uRL就像:

<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>

我也尝试过window.open(url, "_self ");

@muradsofiyev-您是正确的。我正在解析从VTL到JavaScript的预期路径,而不是在JavaScript变量中设置路径。因此,$搜索页变量返回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>`

最新更新