[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Получение имён, отправка ID. Обработка <select>?
Jops
Здравствуйте уважаемые!

Столкнулся с такой проблемой и ни как не могу навести себя на мысль о её решении:

Есть три таблицы:
1. ID пользователя, Имя пользователя
2. ID камеры, Имя камеры
3. ID пользователя, ID камеры, Статус прав (значения 0, 1, 2)

Нужно забирать Имена пользователей и камер (из таблицы 1 и 2), формировать на их основе <select> (оба друг от друга независимы), после выбора из обоих списков (и нажатию кнопки Создать) данные должны отправляться в виде соответствующих ID пользователя и ID камеры в таблицу 3 (ну статус права само собой отправляется, но данного вопроса он не касается).

Проблема в том, что я не могу срастить, как это осуществить непосредственно при "расфасовке" в jQuery (серверная часть написана на PERL, но с ней проблем не будет, выборка и данные придут, какие потребуются)

Если кто сталкивался с подобным, прошу откликнуться

Ниже приведена сама форма и формировщик окна (если кому понадобится для наглядности)

<form id="rul_form" >
<table>
<tr>
<th
width="150">Поле</th>
<th>
Значение</th>
</tr><tr>
<td>
ID пользователя<span class="req">*</span></td><!-- Здесь должен быть список -->
<td><input type="text" name="user_id"></td>
</tr><tr>
<td>
ID камеры<span class="req">*</span></td><!-- Здесь должен быть список -->
<td><input type="text" name="cam_id"></td>
</tr><tr>
<td>
Запрещено<input type="radio" checked="checked" name="rw" value="0"/></td>
<td>
Разрешено<input type="radio" name="rn" value="1"/></td>
<td>
Только онлайн<input type="radio" name="rs" value="2"/></td>
</tr>
</table>
</form>



function func_rul() {
$("#usr_reload").click(function(){
func_rul();
});

$("#rul_create").click(function(){
$("#rul_form").dialog({
title: 'Создание новых прав',
width: 'auto',
height: 'auto',
resizable: false,
autosize: true,
modal: true,
buttons: {
"Создать": function() {
create_usr(this);
},
"Отмена": function() {
$( this ).dialog( "close" );
}
}
,
close: function(ev, ui) {
$('input',this).val('');
}
}
);
});



function create_usr(obj) {
var usr_url = cam_control+"/cgi-bin/admin.pl?m=addrules"; //Путь к серверному скрипту
$.ajax({
type: 'GET',
dataType: 'json',
data: $(obj).serialize(),
cache: false,
url: usr_url,
success: function(data){
if(data.error != undefined) {
if(undefined != err_lang[data.error]) {
alert('Ошибка: '+err_lang[data.error]);
}else{
alert('Возникла неизвестная ошибка, попробуйте позже. ('+data.error+')');
}
}
else {
jAlert('Права успешно добавлены, user_id: '+data.id,'Информация');
func_rul();
$(obj).dialog("close");
}
}
,
error:function (xhr, ajaxOptions, thrownError, request, error){
alert('Возникла неизвестная ошибка, попробуйте позже. \n [ \n'+'xrs.cam_status = ' + xhr.status + '\n' + 'thrown error = ' + thrownError + '\n' + 'xhr.statusText = ' + xhr.statusText + '\n' +
'request = ' + request + '\n' + 'error = ' + error+' \n ]');
}
}
);
}

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.