получить id выбранного option

Denis_Pi

Art сreator
Заблокирован
Регистрация
8 Май 2012
Сообщения
405
Реакции
240
  • Автор темы
  • Заблокирован
  • #1
Наваял код, необходимо получить id выбранного option Как?
case"creategroup":

Код:
$sql_cat = $db->super_query("SELECT cat_id,cat_name FROM `".PREFIX."_communities_cats`",1);
            foreach($sql_cat as $row_cat){
                $opt .= '<option onclick="$(\'#cats\').val('.$row_cat['cat_id'].');" id="'.$row_cat['cat_id'].'">'.$row_cat['cat_name'].'</option>';
            }
            die('
            <div style="padding:20px"><div class="videos_text">Название</div><input type="text" class="videos_input" id="title" maxlength="65" />
            <div class="videos_text">Категория</div><select id="catigories" class="inpst">
            '.$opt.'
            </select>
            <input type="hidden" id="cats" value="Здесь нужно получит id выбранного option">
            </div>
            ');
        break;

- - - - .$sql_cat[]['cat_id']. - - - делаю так, не работает...=(
Хелп ми плис!!!
 
Последнее редактирование:
А прописать для option нужное значение в value и "нормально" (из $_GET или $_POST) получать его не вариант?
Код:
$sql_cat[]['cat_id']
не будет работать, т.к. обращение к $sql_cat[] без указания индекса предусматривает добавление элемента в массив

p.s. выбранный option можно получить в браузере при помощи JS или JQuery.. если, конечно, он там нужен. Для просмотра ссылки Войди или Зарегистрируйся
 
  • Автор темы
  • Заблокирован
  • #3
А прописать для option нужное значение в value и "нормально" (из $_GET или $_POST) получать его не вариант?

не не варик...

а js -ом можно пишут, что так получить

$('#catigories').change(function(){
var text = $("#catigories option:selected").text();
$("input.cats").val(text);
});

я пробовал не работает чего то...
 
  • Автор темы
  • Заблокирован
  • #4
мля, должно же быть решение на php, пишу .$sql_cat[0]['cat_id']. - получает именно первый id -соответственно если .$sql_cat[1]['cat_id']. - то получает id второго оптиона? а как получить айди выбранного?
 
  • Автор темы
  • Заблокирован
  • #6
Для просмотра ссылки Войди или Зарегистрируйся
внизу Examples: для наглядного примера

Код:
<script>window.onload = function() {
$( "select" )
  .change(function () {
    var str = "";
    $( "select option:selected" ).each(function() {
      str += $( this ).text() + " ";
    });
    $( "div" ).text( str );
  })
  .change();
};</script>

вот такой скрипт получается...

как его правильно захреначить в мой код?

Код:
$sql_cat = $db->super_query("SELECT cat_id,cat_name FROM `".PREFIX."_communities_cats`",1);
foreach($sql_cat as $row_cat){
$opt .= '<option onclick="$(\'#cats\').val('.$row_cat['cat_id'].');" id="'.$row_cat['cat_id'].'">'.$row_cat['cat_name'].'</option>';
}
die('
<div style="padding:20px"><div class="videos_text">Название</div><input type="text" class="videos_input" id="title" maxlength="65" />
<div class="videos_text">Категория</div><select id="catigories" class="inpst">
'.$opt.'
</select>
<input type="hidden" id="cats" value="Здесь нужно получит id выбранного option">
</div>
');
break;

вставляю так:

Код:
case"creategroup":
          
            $sql_cat = $db->super_query("SELECT cat_id,cat_name FROM `".PREFIX."_communities_cats`",1);
            foreach($sql_cat as $row_cat){
                $opt .= '<option onclick="$(\'#cats\').val('.$row_cat['cat_id'].');" value="'.$row_cat['cat_id'].'" id="'.$row_cat['cat_id'].'">'.$row_cat['cat_name'].'</option>';
            }
            die('
            <div style="padding:20px"><div class="videos_text">Название</div><input type="text" class="videos_input" id="title" maxlength="65" />
            <div class="videos_text">Категория</div><select id="catigories" class="inpst">
            '.$opt.'
            </select>

            <input type="hidden" id="cats" name="cats" class="cats" value="">
            </div>
            <script>window.onload = function() {
$( "select" )
  .change(function () {
    var str = "";
    $( "select option:selected" ).each(function() {
      str += $( this ).text() + " ";
    });
    $( "val" ).text( str );
  })
  .change();
};</script>
            ');
        break;

не получает значение
 
Код:
<script>window.onload = function() {
$( "select" )
  .change(function () {
    var str = "";
    $( "select option:selected" ).each(function() {
      str += $( this ).text() + " ";
    });
    $( "div" ).text( str );
  })
  .change();
};</script>

вот такой скрипт получается...

как его правильно захреначить в мой код?

Код:
$sql_cat = $db->super_query("SELECT cat_id,cat_name FROM `".PREFIX."_communities_cats`",1);
foreach($sql_cat as $row_cat){
$opt .= '<option onclick="$(\'#cats\').val('.$row_cat['cat_id'].');" id="'.$row_cat['cat_id'].'">'.$row_cat['cat_name'].'</option>';
}
die('
<div style="padding:20px"><div class="videos_text">Название</div><input type="text" class="videos_input" id="title" maxlength="65" />
<div class="videos_text">Категория</div><select id="catigories" class="inpst">
'.$opt.'
</select>
<input type="hidden" id="cats" value="Здесь нужно получит id выбранного option">
</div>
');
break;

вставляю так:

Код:
case"creategroup":
        
            $sql_cat = $db->super_query("SELECT cat_id,cat_name FROM `".PREFIX."_communities_cats`",1);
            foreach($sql_cat as $row_cat){
                $opt .= '<option onclick="$(\'#cats\').val('.$row_cat['cat_id'].');" value="'.$row_cat['cat_id'].'" id="'.$row_cat['cat_id'].'">'.$row_cat['cat_name'].'</option>';
            }
            die('
            <div style="padding:20px"><div class="videos_text">Название</div><input type="text" class="videos_input" id="title" maxlength="65" />
            <div class="videos_text">Категория</div><select id="catigories" class="inpst">
            '.$opt.'
            </select>

            <input type="hidden" id="cats" name="cats" class="cats" value="">
            </div>
            <script>window.onload = function() {
$( "select" )
  .change(function () {
    var str = "";
    $( "select option:selected" ).each(function() {
      str += $( this ).text() + " ";
    });
    $( "val" ).text( str );
  })
  .change();
};</script>
            ');
        break;

не получает значение
где то пропущена кавычка или какой то знак. Смотри внимательнее

value="'.text'">
 
Код:
$( "val" ).text( str );
что должна сделать эта строчка?
Если в cats засунуть надо, то заменить на
Код:
$('#cats').val(str);
Если сделать alert(str) будет то что нужно?
Ошибки JS есть какие-нибудь?
 
  • Автор темы
  • Заблокирован
  • #9
где то пропущена кавычка или какой то знак. Смотри внимательнее

value="'.text'">

вот когда пишу ему value="'.text'"> он даёт ошибку Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING on line 50

- это вот эта строка
'); break;

 
Назад
Сверху