Я взглянул на некоторые другие вопросы, но я все еще не уверен, как этого добиться.
Ситуация такова, что у меня была сложная форма, которая статически работала нормально, но я "сделал ее лучше", сделавона отправляется с использованием запроса AJAX.
Теперь URL-адрес страницы не изменяется, чтобы в ней были параметры, как раньше, но я вижу полный URL-адрес с помощью firebug.
Что яя собираюсь сделать это, получить этот URL и сделать кнопку для ссылки на него, чтобы пользователь мог добавить его в закладки, потому что в настоящее время результаты поиска не могут быть добавлены в закладки.
Извините, если в любом случае это точная копия, но любаяпомощь и совет очень важны.
Это мой запрос (ы) AJAX (в основном они одинаковы, но у меня есть две формы, представленные пользователю как одна форма, простой поиск и переключенный расширенный поиск):
// setup AJAX request for simple search
$simpleform = $('#search');
$simpleform.submit(function() {
$.ajax($simpleform.attr('action'), {
data: $simpleform.serialize(),
dataType: 'html',
url: 'docsearch.php',
type: 'GET',
beforeSend: function() {
var $load = $('#loadingmessage');
$('#search_results').fadeOut(1000);
$load.hide().fadeIn(1000);
if (!$load.length)
{
$load = $('<div id="loadingmessage">').appendTo($('#placeholder'));
}
$load.html('Searching... Please wait...');
// disable both search buttons
$('.submit').attr('disabled', 'disabled');
$('.submit').addClass("disabled");
$('#advancedsearchbutton').attr('disabled', 'disabled');
$('#advancedsearchbutton').addClass("disabled");
},
success: function(response) {
// response is the text sent back by server
// find the search_results div in the response and insert it after the placeholder div
$(response).find('#search_results').insertAfter($('#placeholder')).fadeIn(1000);
// re-initialise lightbox and dataTable plugins
$('a.lightbox').lightBox();
$('#test-docs-table').dataTable( {
"sPaginationType": "full_numbers",
"sDom": 'Rlfrtip',
"aoColumns": [
null,
null,
{ "sType": "title-numeric" },
null
]
});
},
complete: function() {
// hide loading message:
$('#loadingmessage').fadeOut('slow');
// enable both search buttons
$('.submit').removeAttr("disabled");
$('.submit').removeClass("disabled");
checkDropdowns();
}
});
return false; // Cancel default event
});
// end AJAX request
// setup AJAX request for advanced search
$form = $('#advancedsearchform');
$form.submit(function() {
$.ajax($form.attr('action'), {
data: $form.serialize(),
dataType: 'html',
url: 'docsearch.php',
type: 'GET',
beforeSend: function() {
var $load = $('#loadingmessage');
$('#search_results').fadeOut(1000);
$load.hide().fadeIn(1000);
if (!$load.length)
{
$load = $('<div id="loadingmessage">').appendTo($('#placeholder'));
}
$load.html('Searching... Please wait...');
// disable both search buttons
$('.submit').attr('disabled', 'disabled');
$('.submit').addClass("disabled");
$('#advancedsearchbutton').attr('disabled', 'disabled');
$('#advancedsearchbutton').addClass("disabled");
},
success: function(response) {
// response is the text sent back by server
// find the search_results div in the response and insert it after the placeholder div
$(response).find('#search_results').insertAfter($('#placeholder')).fadeIn(1000);
// re-initialise lightbox and dataTable plugins
$('a.lightbox').lightBox();
$('#test-docs-table').dataTable( {
"sPaginationType": "full_numbers",
"sDom": 'Rlfrtip',
"aoColumns": [
null,
null,
{ "sType": "title-numeric" },
null
]
});
},
complete: function() {
// hide loading message:
$('#loadingmessage').fadeOut('slow');
// enable both search buttons
$('.submit').removeAttr("disabled");
$('.submit').removeClass("disabled");
$('#advancedsearchbutton').removeAttr("disabled");
$('#advancedsearchbutton').removeClass("disabled");
}
});
return false; // Cancel default event
});
// end AJAX request