Получить значение атрибута имени опции для ввода - PullRequest
1 голос
/ 05 мая 2020

Я хочу получить значение атрибута name на входе (#currency_sym).

HTML:

<select id="cur_rate" onchange="changeFunc();">
     {{#each currencies}}
        <option name="{{this.symbol}}">{{this.currency}}</option>
     {{/each}}
</select>
<input type="text" id="currency_sym">

Javascript функция:

function changeFunc() {
   $('#currency_sym').val($(".currateopt").attr("name"));
}

Когда я пытался выбрать различные значения опций. Но всегда показывает только один символ. В чем проблема?

Ответы [ 3 ]

2 голосов
/ 05 мая 2020

Чтобы получить имя выбранной опции, измените свою функцию следующим образом:

function changeFunc() {
   $('#currency_sym').val($("#cur_rate").find("option:selected").attr("name"));
}
2 голосов
/ 05 мая 2020

Вы можете использовать option:selected для таргетинга на выбранный вариант из переданного элемента:

Демо:

function changeFunc(el) {
   $('#currency_sym').val($(el).find('option:selected').attr("name"));
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="curratesec" id="cur_rate" onchange="changeFunc(this);">
     <option selected disabled>--Select Currency--</option>
     <option class="currateopt" id="id1" value="1" 
              name="symbol1">Dollar</option>
              <option class="currateopt" id="id2" value="2" 
              name="symbol2">Pound</option>
     <input type="text" id="currency_sym" name="currency_sym">
</select>
0 голосов
/ 05 мая 2020

Вы можете попробовать

html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="test.js"></script>
</head>
<body>
<button type="button" id="test" name="test" onclick="myFunction(this);">Click Me!</button>
</body>
</html>

тест. js

function myFunction(obj){
alert(obj.name)
}

ИЛИ

var obj = document.getElementById("test");
alert(obj.name);

С уважением

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...