$('#submit').click(function(){
window.location.replace("searchscreen.html");
var term = $('#search').text();
displaySearchEntries(term);
});我编写代码直接到搜索结果页面,并调用javascript函数返回适当的结果。到目前为止,这重定向页面,displaySearchEntries(术语)被调用,但立即消失。似乎重定向是在调用函数之后发生的,但我不知道为什么会发生重定向,也不知道如何防止它发生。有什么建议吗?
发布于 2014-02-07 06:37:44
您无法控制下一页。一旦重定向发生,该页就完成了。
如果你想要在下一页发生什么事情,你将需要找到一种方式传递信息到该页面。这通常是通过查询字符串、提交表单、cookie或本地存储来完成的。下一页需要查找并处理该数据。
使用查询字符串的基本思想:
第一页:
$('#submit').click(function(e){
e.preventDefault();
var term = $('#search').text();
window.location.replace("searchscreen.html?search=" + encodeUriComponent(term));
});和searchscreen.html上的代码
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
$(function(){
//read querystring
var term = getParameterByName("search");
//run your search
if(term.length) {
displaySearchEntries(term);
}
});发布于 2014-02-07 06:46:01
重定向page.In搜索screen.html上的调用函数使用document.ready
发布于 2014-02-07 06:50:48
当您使用window.location时,它会杀死浏览器中运行的所有脚本。您可以使用JQuery AJAX调用,并使用回调函数来完成其余的工作。
如果您不打算使用AJAX函数,那么唯一可能的方法就是使用一个参数来标识重定向。
window.location = "searchscreen.html?redirect=true";并检查重定向变量并调用$(document).ready()中的函数。
https://stackoverflow.com/questions/21620786
复制相似问题