Показать сообщение отдельно
  #2 (permalink)  
Старый 04.04.2011, 21:18
Профессор
Отправить личное сообщение для Telnet Посмотреть профиль Найти все сообщения от Telnet
 
Регистрация: 21.02.2011
Сообщений: 160

Разобрался Сам.
Сделал через $.post
if(razdelValue.length != 0 && razdelValue != 'default') {
		$.post("addSMS/ajax.php",{razdel: razdelValue},
				function (data, status){
		part.empty().prepend(data).attr('disabled','');
		})
		
		}

Ошибка была в файле ajax.php
header('Content-Type: text/html; charset=utf-8');
if (!isset($_SERVER['HTTP_X_REQUESTED_WITH'])){
	exit('Данные отправлены не через AJAX');
}
if (isset($_REQUEST['razdel'])){	
	echo show_part();
} else {
    echo 'Данные не получены';
 }
//Формируем список таблиц
function show_part(){
$choose_razdel=$_REQUEST['razdel'];
$choose_razdel = iconv("UTF-8", "windows-1251", $choose_razdel);
$result21 = mysql_query("SELECT DISTINCT rus_trans FROM title WHERE rus_raz='$choose_razdel'");   //,   
$myrow21 = mysql_fetch_array($result21);
//$out = 'Выбрано  '.mysql_num_rows($result21).'<br />'.$choose_razdel;
[B]ОШИБКА ЗДЕСЬ[/B]
do 
{
	$rus_trans[] = preg_replace("/( \d)$/","",$myrow21['rus_trans']);
	$rus_trans = array_unique($rus_trans);
}
while ($myrow21 = mysql_fetch_array($result21));
$out = '<option value="default" name="chP" selected>Выберите категорию</option>';

foreach($rus_trans as $key=>$value){
	$out .= "<option value='$rus_trans[$key]' > $rus_trans[$key]</option>";
}
$out = iconv("windows-1251", "UTF-8", $out);
return $out;
}

Раньше когда та строка была раскоментирована, она содержала информацию о выбранном количестве строк, и переменной по которой производилась выборка из базы, и не содержала тега <option>.
Все браузеры это пропускали мимо ушей, а долбанный IE не понимал такой HTML разметки и выводил пустой список.

Вывод будьте, внимательны при формировании элементов <option>.

P.S. Через $.getJSON делать пока не буду, может потом время будет покапаюсь еще разберусь, там строки
$out = 'Выбрано  '.mysql_num_rows($result21).'<br />'.$choose_razdel;

нет в файле ajax.php, но там новые элементы списка вообще ни в одном браузере не появлялись.
Ответить с цитированием