#php #javascript #jquery #jquery-ui
#php #javascript #jquery #jquery-пользовательский интерфейс
Вопрос:
По сути, я использую datepicker из jQuery, чтобы мой клиент мог выбрать дату. Затем я хочу взять эту дату (как только они ее выберут) и обработать ее через базу данных, чтобы предварительно заполнить указатель времени.
Проблема в том, что я не знаю, как принять значение этого поля ввода и обработать его без фактической отправки формы. Я хочу разобраться со значением, как только они выберут.
Вот мой код выбора даты:
$(function() {
$( "#datepicker" )
.datepicker({ minDate: ' 1' });
});
Я предполагаю, что мне каким-то образом пришлось бы добавить событие onblur, но я не уверен, как лучше всего это сделать.
Комментарии:
Ответ №1:
Чтобы сервер действительно обработал значение средства выбора даты без отправки формы, вам пришлось бы передать это значение на сервер через AJAX.
$('.datepicker').datepicker({
onSelect: function(dateText, inst) {
$.ajax({
url: "yourscript.php",
type: "POST",
data: ({date : dateText}),
success: function(data){
alert(data);
}
});
}
});
Комментарии:
1. Мне пришлось изменить URL и данные на это, чтобы это работало, но это работает, URL указывает на функцию контроллера: onSelect: function(dateText, inst) { $.ajax({ url: «/order/get_preorder_time /», тип: «POST», данные: «date =» dateText, успех: функция (данные){ var EndTime = data; document.write(EndTime); } }); }
Ответ №2:
Вы можете сделать это, используя поддержку AJAX jQuery.
Ответ №3:
$("#datepicker").change(функция(){ $.ajax({ введите:"GET", url: "URL здесь", Успех: функция(ответила){ оповещение ("добавлено"); } }); });
Ответ №4:
Для этого вам придется использовать ajax, если вы не хотите отправлять форму.
// code for IE7 , Firefox, Chrome, Opera, Safari
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
// code for IE6, IE5
} else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET",site,false);
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlhttp.send(null);
Где var site
— это страница php с прикрепленными переменными get, или, если вам нужно использовать изменение запроса POST "GET"
на "POST"
и заменить null
in xmlhttp.send(null)
на строку переменных post.
Надеюсь, это помогло!