Как предварительно выбрать опцию из выпадающего меню в PHP - PullRequest
0 голосов
/ 03 января 2019

Я работаю над темой WordPress для каталога листинга и пытаюсь предварительно выбрать опцию из выпадающего меню, чтобы, когда кто-то открывает эту страницу, он сразу получал списки из этой опции.

Я пытался с jQuery, но он не работал, поэтому я застрял здесь прямо сейчас. Любая помощь приветствуется.

Изображение: https://imgur.com/a/G0Rtny3

РЕДАКТИРОВАТЬ: я нашел исправление, я сделал «Producer» единственным вариантом и изменил оператор if с! Empty ($ term_ID) на пустой ($ term_ID).

Возможно, это не лучшее решение, но оно работает для меня. Спасибо всем.

<select data-placeholder="<?php echo esc_html__('Select Category','dwt- 
listing');?>" name="l_category" class="allow_clear" id="l_category">

<option value=""><?php echo esc_html__('Select an 
option','dwt-listing'); ?>
</option>

<option value="all"><?php echo esc_html__('All Categories','dwt- 
listing'); ?>
<?php

        //selective
        if( isset( $_GET['l_category'] ) && $_GET['l_category'] != "" )
        {
            $term_ID = $_GET['l_category'];
        }
        foreach( $listing_cats as $cats )
        {
        ?>  
          <option <?php if ($cats->term_id == $term_ID) { ?>selected="selected"<?php } ?> value="<?php echo esc_attr( $cats->term_id ); ?>"><?php echo esc_html( $cats->name ); ?></option>
        <?php
        }
        ?>
       </select>

Ответы [ 2 ]

0 голосов
/ 03 января 2019
I have made a little change in your code.
check this and first in sure that you have got $term_ID or not because your selected option depend on this variable.

Replace this:-

    <option <?php if ($cats->term_id == $term_ID) { ?>selected="selected"<?php } ?> value="<?php echo esc_attr( $cats->term_id ); ?>"><?php echo esc_html( $cats->name ); ?></option> 

With this:-

    <option value="<?php echo esc_attr( $cats->term_id ); ?>" <?php if ($cats->term_id==$term_ID) { echo "selected='selected'"; } ?> ><?php echo esc_html( $cats->name ); ?></option>
0 голосов
/ 03 января 2019

Этот пример может помочь

var select = document.getElementById('countryselect');
var option;

for (var i=0, i<select.options.length; i<iLen; i++) {
  option = select.options[i];

  if (option.value == '4') {
  // or
  // if (option.text = 'Malaysia') {
     option.setAttribute('selected', true);

     // For a single select, the job's done
     return; 
  }  
}

Вот ссылка Как добавить «выбранные» в атрибут опции, используя Javascript или jQuery?

...