Javascript重定向.PHP Get请求.浏览器地址字符串


Javascript redirect. PHP Get request. Browser adress string

我有js函数

    function searchRequest(months){
    //base url
    var protocol = window.location.protocol;
    var siteUrl = window.location.host;
    //get months and years 4 link
    var yearToUrl = months.toString().substring(0,4);
    var monthsToUrl = months.toString().substr(-2);
    //calculating months days
    var yearForDays = parseInt(yearToUrl);
    var monthsForDays = parseInt(monthsToUrl);
    var daysToUrl = 33 - new Date(yearForDays, monthsForDays-1, 33).getDate();
    //add months days and year to link
    var lastUrlPart = 'invoices/#_form=42422b080fbce04ec7f431ad4abe6f6495d8f7bf&view=search&predefined_search=2&invoice_date_from=01%2F' + monthsToUrl + '%2F' + yearToUrl + '&invoice_date_to=' + daysToUrl + '%2F' + monthsToUrl + '%2F' + yearToUrl;
    //creating link
    var redirectUrl = protocol + '//' + siteUrl + '/' + lastUrlPart;
    window.location.href = redirectUrl;
}

有了这个链接,在其他网页的网站应该启用搜索。但重定向后,它没有工作。此外,当我用那个url设置我的cursour到浏览器地址字符串并点击键盘上的回车键时,搜索可以正常使用那个链接。我该怎么解决?我需要重定向后的结果。谢谢

这是我从函数链接的输出http://actamedical.loc/invoices/#_form=42422b080fbce04ec7f431ad4abe6f6495d8f7bf&视图=搜索&predefined_search=2&invoice_date_from=01%2F09%2F2012&invoice_date_to=30%2F09%2F2012

尝试

window.location.reload()

更改url后(希望不会重新更改(

好的。在一些大脑崩溃后,我发现在项目中使用网格系统,我们可以设置主动网格或非主动网格。我的重定向不起作用,因为目标页面有三种搜索类型(实时、高级和预定义(。我举了一个来自预定义搜索的类似链接,但该搜索并没有添加到网格系统中,并且网格无法通过使用get请求设置为活动。就像说"快"我应该触发页面重新加载。我发现为了制造一些贪婪,我应该用饼干。我为我的请求重写了模板函数,并从高级搜索中获取了链接。

function openGridTab(el)
{
var url = $(el).attr('href') ? $(el).attr('href') : el;
var place = url.split('/#', 2)[0].split('//')[1].split('/').reverse().shift();
var tab = url.split('#', 2)[1].split('&', 2)[0].split('=', 2)[1];
var search_form_name = $(el).attr('rel') ? $(el).attr('rel') : '42422b080fbce04ec7f431ad4abe6f6495d8f7bf';
switch(place)
{
    case 'tasks':
    {
        //var cookieName = tasksInterface.options['tabs_cookie'];
        var cookieName = 'tsk_flt';
        break;
    }
    case 'requests':
    {
        //var cookieName = requestsInterface.options['tabs_cookie'];
        var cookieName = 'req_flt';
        break;
    }
    case 'invoices':
    {
        //var cookieName = invoicesInterface.options['tabs_cookie'];
        var cookieName = 'inv_flt';
        break;
    }
    default:
    {
        return false;
    }
}
$.cookie(cookieName, tab);
if (tab == 'search')
{
    var params = url.split('&');
    params.shift();
    var form = '<form action="'+ url.split('#')[0] +'" method="get">' +
    '<input type="hidden" name="_form" value="'+ search_form_name +'"/>' +
    '<input type="hidden" name="view" value="search"/>' +
    '<input type="hidden" name="reload" value="1"/>';
    for (var i = 0; i < params.length; i++) {
        var param = params[i].split('=', 2);
        form += '<input type="hidden" name="'+ param[0]  +'" value="'+ param[1]  +'"/>';
    }
    form += '</form>';
    $(form).appendTo('body')[0].submit();
}
else
{
    window.location = url;
}
return false;

}

并重写我的脚本函数。。。更改url并使用我的功能

var lastUrlPart = 'invoices/#view=search&invoice_num=&invoice_amount_from=&invoice_amount_to=&invoice_law=&invoice_report_type=&req_experts_nb=&invoice_patient=&invoice_company=&invoice_client=&invoice_state=&invoice_transaction_date_from=01%2F' + monthsToUrl + '%2F' + yearToUrl + '&invoice_transaction_date_to=' + daysToUrl + '%2F' + monthsToUrl + '%2F' + yearToUrl + '&req_without_appointments=0&invoice_create_date_from=&invoice_create_date_to=&specs_change_request=0&attr_billed=1&attr_paid=0&attr_subtraction=0';
    //creating link
    var redirectUrl = protocol + '//' + siteUrl + '/' + lastUrlPart;
    openGridTab(redirectUrl);

此外,我还在想,用一些js函数,还有什么更简单的答案可以回答我的问题。谢谢你的帮助。