JS изменить имя выбора на основе выбора варианта

0

У меня есть динамическое выпадающее меню, в котором параметры загружаются из базы данных. Теперь мне нужно изменить атрибут каждый раз, когда в раскрывающемся меню выбирается другой параметр.

Для этого я пытаюсь использовать js, на мой взгляд, подходящий для выполнения этой работы, но, к сожалению, мне сложно и не может найти правильное решение, на самом деле я не знаю, как его запустить.

Вот мой PHP-код, который динамически генерирует выпадающее меню:

$opt = '<select id="Forex" name="" style="display: none">';
            $opt1 = '<option value="">Select Forex Workshop</option>';
                $opt2 = '';
                while($result = mysqli_fetch_assoc($query)){
                    if($timestamp < $result['endingDate']){
                    $opt2 .= '<option id="'.$result['id'].'" value="'.$result['startingDate'].'">'.$result['course'].'</option>';   
                    }
                }

                $opt3 =  '</select>';
                return $opt.$opt1.$opt2.$opt3;

Может ли кто-нибудь предложить решение, по крайней мере, дать мне ссылку на статью, которая охватывает эту проблему

  • 0
    document.getElementById('Forex').onchange = function() { this.name = this.value; }
  • 0
    Почему вы пытаетесь изменить атрибут?
Показать ещё 2 комментария
Теги:

3 ответа

1

Вы можете добавить событие "onchange" и изменить имя, которое вам нравится:

$('#Forex').change(function(){
    var val = $(this).val(); // you can get the value of selected option

    //you can process your conditions here

    $(this).attr('name', 'your_choice_name'); // this will change the name attribute
});

или вы можете сделать это из javascript

<select id="Forex" name="abc" onchange="changeAttr(this);">
    <option value="1">Option 1</option>
    <option value="2">Option 2</option>
</select>


<script type="text/javascript">
function changeAttr(ele)
{
    var val = ele.value;
    var n = "";

    if(val == 1){
        n = 'xyz';
    } else if(val == 2){
        n = 'abc';
    }
    ele.setAttribute('name', n);
}
</script>

Надеюсь, это поможет вам, чего вы хотите...

0

Используйте jquery с событием "onChange", которое изменит атрибут, который вы хотите, с выбранным элементом в списке.

jQuery получить значение select onChange

0

Hei! Не уверен, понял ли я вас, но вы можете использовать jQuery для управления атрибутами события изменения. Для события http://api.jquery.com/change/ Чтобы изменить атрибут http://api.jquery.com/attr/

Ещё вопросы

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