#javascript
#javascript
Вопрос:
у меня есть html-страница с некоторыми входными данными, мне нужно запустить функцию js, которая в конечном итоге приведет к запуску url GET или POST (без учетных данных) проблема в том, что мне нужно увидеть это в моем url
http://restaubid.com/cgi-bin/mmcal.cgi?restaubid/keyword/oven
вместо этого я вижу это
http://localhost:8080/?keyword=ovenamp;email=
Не беспокойтесь об электронной почте; Я использую thymleaf для интерфейса и java для серверной базы данных для сохранения электронной почты.
На данный момент мне действительно нужно запустить URL-адрес с правильным URL-адресом, который является следующим
http://restaubid.com/cgi-bin/mmcal.cgi?restaubid/keyword/oven
мой код выглядит следующим образом (index.html )
<div class="col span-2-of-2">
<form action="">
<input type="text" name="keyword" id="keyword" placeholder="Search">
<input type="text" name="email" id="email" placeholder="Email (Optional)">
<button type="submit" onclick="equipmentSearchFn()">Search</button>
</form>
</div>
для скрипта у меня есть в моем HTML-файле (index.html )
<script>
function equipmentSearchFn() {
let keyword;
let email;
let url;
keyword = document.getElementById("keyword").value;
email = document.getElementById("email").value
document.getElementById("keyword").innerHtml = keyword;
document.getElementById("email").innerHtml = email;
let xmlHttp;
if (window.XMLHttpRequest) {
// code for modern browsers
xmlHttp = new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlHttp.onreadystatechange = function () {
if (xmlHttp.readyState == 4 amp;amp; xmlHttp.status == 200) {
}
}
url = "http://restaubid.com/cgi-bin/mmcal.cgi?restaubid/keyword/" keyword;
//window.location = url keyword;
xmlHttp.open('GET', url, true);
xmlHttp.send();
}
</script>
я очень признателен…
Комментарии:
1. Я откатил редактирование, которое было сделано для этого вопроса, поскольку оно фактически нарушило вопрос, превратив иллюстративные ссылки в интерактивные ссылки со скрытым URL-адресом. Я также отредактировал, чтобы все правильно отформатировать.
Ответ №1:
Здесь у вас две проблемы. Первая это кнопка «отправить». Если вы не остановите событие click с помощью javascript, кнопка отправит значения в вашу форму.
Вторая проблема — это AJAX-запрос, который, я думаю, вам вообще не нужен.
function equipmentSearchFn() {
let keyword;
let email;
let url;
keyword = document.getElementById("keyword").value;
email = document.getElementById("email").value
url = "http://restaubid.com/cgi-bin/mmcal.cgi?restaubid/keyword/" keyword;
window.location = url keyword;
}
<div class="col span-2-of-2">
<form action="">
<input type="text" name="keyword" id="keyword" placeholder="Search">
<input type="text" name="email" id="email" placeholder="Email (Optional)">
<button type="button" onclick="equipmentSearchFn()">Search</button>
</form>
</div>
Комментарии:
1. я удалил <form action=»»> также в url есть ключевое слово , которое я удалил, чтобы сохранить его таким url = » restaubid.com/cgi-bin/mmcal.cgi?restaubid/keyword » ключевое слово уже добавлено в окне. locaiton .. затем я запустил код, но он не работает .. я не знаю, есть ли окно. местоположение — это сообщение, для которого требуются некоторые учетные данные сервера, но оно не работает… на странице, на которой я говорю, что эта функция недоступна в рабочей группе restaubid .. что странно, потому что, если вы запустите restaubid.com/cgi-bin/mncal.cgi?restaubid/keyword/oven я получаю набор результатов запроса из базы данных