Выберите только идентификатор текстового поля

0

Я хочу выбрать только идентификатор текстового поля после этого, чтобы вставить в базу данных. Например, у меня есть echo $t['id'] echo $t['name'] но я хочу выбрать только идентификатор. Есть ли какое-либо решение? Я хочу получить из li элементов только $ t ['id'] после этого, чтобы вставить в базу данных... Если я пишу только $ t ['id'], я могу вставлять в базу данных, но если я напишу $ t ['id'] -$t ['name'] Я получаю сообщение об ошибке... Поэтому мне нужно получить только текстовое поле $ t ['id']

HTML:

 <input type="text" name="dropdiv" id="dropdiv" style="width:605" />

  <div id="dragdiv">
      <ul id="allItems">
                    <?php if($tags): ?>
                        <?php foreach($tags as $t): ?>
                            <li id="node" runat="server" value="$t['id']">
                                <?php echo $t['id']?><?php echo $t['name'] ?>
                            </li>
                        <?php endforeach; ?>
                    <?php endif; ?> 
            </ul> 
        </div>                
        <br />

JQuery:

<script type="text/javascript">
        $(function() {
            $("#dragdiv li").draggable({
           helper: "clone",
           cursor: "move",
           revert: "invalid"
       });

       initDroppable($("#dropdiv"));

       function initDroppable($elements) {
           $elements.droppable({
               activeClass: "ui-state-default",
               hoverClass: "ui-drop-hover",
               accept: ":not(.ui-sortable-helper)",

               over: function (event, ui) {
                   var $this = $(this);
               },
               drop: function (event, ui) {
                   var $this = $(this);
                   if ($this.val() == '') {
                       $this.val(ui.draggable.text().trim());
                       ui.draggable.remove();
                   } else {
                       $this.val($this.val() + " " + ui.draggable.text().trim());
                       ui.draggable.remove();
                   }

               }
           });
       }
        });
    </script>

CodeIgniter

$tags      =     $this->input->post('dropdiv');
        $theid     =     $this->db->insert_id();
 $tags_arr = array();
        $theid = $this->db->insert_id();
        $tags_arr = explode(' ',$tags);
        foreach ($tags_arr as $t) 
        {          
            $tag_SQL = $t;
            $this->db->query("insert into tags_in_news (news_id, tag_id) values ('{$theid}','{$tag_SQL}')");
        }

Помогите, пожалуйста, ребята...

  • 0
    Ваш вопрос не ясен, пожалуйста, попробуйте указать, что именно вы хотите?
  • 0
    Уточните пожалуйста, что именно вы пытаетесь сделать? что вы имеете в виду выбрать идентификатор?
Показать ещё 6 комментариев
Теги:

2 ответа

0

Я вижу только один текстовый код в вашем коде. Итак, просто выполните:

$("#dropdiv").method();

Подробнее о селекторах jQuery можно узнать здесь: http://api.jquery.com/category/selectors/

0

Кажется, я постепенно начинаю понимать. Замените ui.draggable.text() с помощью ui.draggable.attr('value'), потому что вы пытаетесь это получить. Но еще лучше замените атрибут value атрибутом data-id в вашем html (таким образом, он исправит html).

HTML:

<li id="node" runat="server" data-id="$t['id']">

ЯШ:

if ($this.val() == '') {
   $this.val(ui.draggable.attr('data-id').trim());
   ui.draggable.remove();
} else {
   $this.val($this.val() + " " + ui.draggable.attr('data-id').trim());
   ui.draggable.remove();
}
  • 0
    Это нормально, но в текстовом поле отображается только идентификатор ... есть какое-либо решение сделать это с php? Thx
  • 0
    Используйте текстовое поле для отображения с помощью метода .text() и сохраните значение в поле <input type="hidden" /> .

Ещё вопросы

Сообщество Overcoder
Наверх
Меню