Конечно, вот более ясная и структурированная формулировка вопроса: Могу ли я с помощью jQuery Ajax передавать серийный номер с одной страницы на другую и показывать результат поиска в новой вкладке? Например, чтобы пользователь мог нажать на серийный номер на первой странице, после чего открылась бы новая вкладка со страницей поиска, где данный серийный номер уже был бы введен в соответствующем поле формы, и результат поиска отображался ниже? Я пробовал искать подобные решения в интернете, но сталкиваюсь с проблемой: новая вкладка открывается, но без результатов поиска и без введенного серийного номера в форме.Функция Ajax при этом возвращает "success" как true. Буду благодарен за любую помощь.
Для решения вашей задачи вы можете использовать следующий подход:
1. На первой странице создайте ссылку или кнопку с серийным номером, при клике на которую будет открываться новая вкладка со страницей поиска. Например:
```html
<a href="#" id="searchLink" data-serialNumber="123456789">Поиск по серийному номеру</a>
```
2. При клике на эту ссылку или кнопку, соберите серийный номер и передайте его с помощью Ajax на новую страницу. Например:
```javascript
$('#searchLink').click(function(e) {
e.preventDefault();
var serialNumber = $(this).data('serialNumber');
$.ajax({
url: 'search.php',
type: 'POST',
data: { serialNumber: serialNumber },
success: function(response) {
var newWindow = window.open('search_results.html');
newWindow.onload = function() {
newWindow.$('#searchInput').val(serialNumber);
newWindow.$('#searchResults').html(response);
};
},
error: function() {
alert('Ошибка при отправке запроса');
}
});
});
```
3. На новой странице (search_results.html) добавьте форму для поиска и блок для отображения результатов поиска. Например:
```html
<form>
<input type="text" id="searchInput" name="searchInput">
<button type="submit">Найти</button>
</form>
<div id="searchResults"></div>
```
4. На новой странице добавьте скрипт для обработки поискового запроса и отображения результатов. Например:
```javascript
$('form').submit(function(e) {
e.preventDefault();
var serialNumber = $('#searchInput').val();
// Обработка поискового запроса и вывод результатов
$.ajax({
url: 'search.php',
type: 'POST',
data: { serialNumber: serialNumber },
success: function(response) {
$('#searchResults').html(response);
},
error: function() {
alert('Ошибка при отправке запроса');
}
});
});
```
Таким образом, при клике на ссылку на первой странице, новая вкладка откроется с формой поиска, в которой уже будет заполнено поле с серийным номером. Результаты поиска будут отображены на этой же странице в блоке с id "searchResults".
Привет)
Ну, можно сделать что-то вроде
1) Нужный номер подставить как query параметр ссылки на стороне js ( htt://page2?number=123 ) или подставить в какое-то поле с id со стороны пхп прежде чем выплюнуть страницу
2) На второй странице
$( document ).ready(function() { // если передал через ссылку let params = window.location .search .replace('?','') .split('&') .reduce( function(p,e){ let a = e.split('='); p[ decodeURIComponent(a[0])] = decodeURIComponent(a[1]); return p; }, {} ); console.log( params); // если подставил в поле с бэка $("#id").val(); });
и все, дальше вертишь как хочешь, можешь подставить значение в нужную апишку, получить данные и отобразить на странице
У вас 2 разных урла, которые показывают разную информацию. Не совсем понятно, куда и зачем вы отправляете ajax-запрос? Где вы информацию из ответа ajax хотите выводить?
реально ли, передав с 1-ой страницы через jquery ajax значение серийного номера в скрипт формы 2-ой страницы, вывести результат поиска в новой открытой вкладке?
Если вы хотите осуществить переход с одной страницы на другую, то в вашем контексте ajax теряет свой смысл.
реально ли этот, в ручную осуществляемый, процесс превратить в программно выполняемый, чтоб по нажатию на серийный номер на 1-ой странице открывалась новая вкладка с уже найденными результатами поиска, ну, и сам серийный номер уже значился бы в соответствующем поле формы?
Реально. И вам будет проще сделать серийные номера в виде ссылок и при нажатии на них переходить на 2 урл, передавая значение серийного номера в get-параметре. В скрипте на 2 урле из $_GET тянуть этот серийный номер, ну и дальше делать, то что вам нужно. Можете произвести поиск сразу при переходе, а можете значение подставить в поле формы по-умолчанию.
На странице с серийными номерами каждый серийный сделайте ссылкой на вторую страницу, с аргументом вида server.net/page2.php?serial_id=AA12-34-5678 .
Соответственно на второй странице сразу делайте поиск этого $_GET['serial_id'], и выводите результат. Ну или если форма нужна-нужна-всенепременнейше - рисуйте эту форму с заполненным из $_GET['serial_id'] полем серийного номера.
Всё!