#jquery #ajax
#jquery #ajax
Вопрос:
Я пытаюсь найти способ передать переменную GET в диалоговое окно пользовательского интерфейса Jquery для обработки некоторым PHP. Это то, что у меня есть:
$('.userjudge').click(function(){
var user = getID($(this).attr('id'),'UserJudge');
$('#judgesMenu').dialog('open');
$('#judgesMenu').data('user', user);
$( "#judgesMenu" ).dialog({
minWidth: 330,
postition: top,
open: function(event, ui) {
$.ajax({
type: "GET",
url: "adminmenu.php",
data: "user=" user
});
}
});
$( "#judgesMenu" ).dialog( "option", "position", 'top' );
});
Кто-нибудь может сказать мне, как это сделать правильно?
Комментарии:
1. Вам нужно поместить содержимое HTML
adminmenu.php?user=ID
в #judgesMenu ? Вы пытались использовать$("#judgesMennu").load("adminmenu.php?user=ID")
перед открытием диалогового окна?
Ответ №1:
Одна из проблем, которую я заметил, заключается в том, как вы передаете данные в метод jQuery ajax. Вы должны делать что-то вроде этого
$.ajax({
type: "GET",
url: "adminmenu.php",
data: {"user":user}
});
Вы можете найти более подробную информацию и примеры использования метода ajax в документации jQuery по адресу http://api.jquery.com/jQuery.ajax /
Ответ №2:
Из-за лексического ограничения ваше решение уже должно работать. вам не нужно добавлять переменную «user» к данным вашего диалогового окна, вы можете просто ссылаться на нее так, как вы это делаете в данный момент. Кроме того, я переместил ваши данные непосредственно в URL-адрес, поскольку это больше похоже на то, что вы пытаетесь сделать
$('.userjudge').click(function(){
var user = getID($(this).attr('id'),'UserJudge');
$( "#judgesMenu" ).dialog({
minWidth: 330,
postition: top,
open: function(event, ui) {
$.ajax({
type: "GET",
url: "adminmenu.php?user=" user
});
}
});
$('#judgesMenu').dialog('open');
});
Комментарии:
1. Диалоговое окно по-прежнему не извлекает переменную = (
2. Как вы проверяете, что он не получает переменную? Что отображается, когда вы устанавливаете точку останова в событии открытия диалога? Что делает функция getId(), которую вы вызываете в начале события click?
3. Диалоговое окно находится внутри div на той же странице — это вызовет какие-либо проблемы?