Показать сообщение отдельно
  #1 (permalink)  
Старый 22.05.2012, 12:46
Профессор
Отправить личное сообщение для SunYang Посмотреть профиль Найти все сообщения от SunYang
 
Регистрация: 22.02.2008
Сообщений: 189

Передать в AjaxUpload динамическое значение selected для option
Есть select, который jquery код делает выбраным один из option.
Так вот если select делается selected с помощью jquery, а не в жесткую прописан в коде, то невозможно передать в качестве data: { } значение этого динамически созданного selected. Выдает: undefined.

php формирует select:

<select size="5" id="select_cat" name="select_cat">
<? 
$opt_cat = $sql->query('SELECT id, name FROM category');
foreach ($opt_cat as $cat_val) {
echo "<option value=\"$cat_val[id]\">$cat_val[name]</option>";
}
 ?>
 </select>


выбираем один из option, получаем значение выбранного option и пытаемся передать его в php из ajaxupload.

$("#select_cat option:selected").val()


пытаемся безуспешно отправить это значение при загрузке картинки:

new AjaxUpload('upload_button', {
action: '/upload.php',
name: 'userfile',
onSubmit: function(file, extension) {
$('#imgloader').show();
$('#upload_button').text('Загрузка...');
//this.disable();
},
type:"POST",
data: {
edit_id: $("#select_cat option:selected").val(), // = undefined почему-то
						},
responseType: "json", 
onComplete : function(file, response) { //onComplete
$('#imgloader').hide();
 if(response.rez==="success") {
							// успешно
								 }
													else { // не очень успешно }
													}
													
					}//onComplete
					
	});


интересно передать option selected именно выбранный пользователем, а не сформированный php. Почему может быть значение пустым?

Последний раз редактировалось SunYang, 22.05.2012 в 12:51.
Ответить с цитированием