Отображать текст выпадающего списка вместо значения, используя innerhtml - PullRequest
0 голосов
/ 19 февраля 2019

У меня есть выпадающий список с такой функцией:

car_list.options [1] = новая опция ('Mazda', 'A_Mazda');

Я поставил A_Mazda какЗначение раскрывающегося списка для различия.Теперь у меня есть кнопка, которая будет отображать значения выпадающего списка в табличном представлении.То, что я хочу отобразить, это текст выпадающего списка, а не значение.Функция addRow () - это то, что я сделал для отображения значения выпадающего списка в форме таблицы.На данный момент, A_Mazda отображается вместо Mazda, когда кнопка нажата.Пожалуйста, помогите

function addRow(){
	var table = document.getElementById("result-table");
	var rowCount = table.rows.length;
	var row = table.insertRow(rowCount);
	
	row.insertCell(0).innerHTML = car.value;
	row.insertCell(1).innerHTML = model.value;
	row.insertCell(2).innerHTML = '<input type="button" value="Delete" onClick="Javacsript:deleteRow(this)"/>';
}

function getDestination(){	
 
            var model_list = document.getElementById('model');
            var car_list = document.getElementById("destination");
            var list1SelectedValue = model_list.options[model_list.selectedIndex].value;
             
            if (list1SelectedValue=='Cars') 
            {
                 
                car_list.options.length=0;
                car_list.options[0] = new Option('--SELECT A CAR--', '');
                car_list.options[1] = new Option('Mazda', 'A_Mazda');
                car_list.options[2] = new Option('Toyota', 'B_Toyota');
                car_list.options[3] = new Option('Honda', 'C_Honda');
                car_list.options[4] = new Option('Hyundai', 'D_Hyundai');
            }
            
            else if (list1SelectedValue=='Food') 
            {
                 
                destination_list.options.length=0;
                destination_list.options[0] = new Option('--SELECT A FOOD--', '');
                destination_list.options[1] = new Option('Burger', 'A_Burger');
                destination_list.options[2] = new Option('Fries', 'B_Fries');
                destination_list.options[3] = new Option('Pasta', 'C_Pasta');
                destination_list.options[4] = new Option('Ice cream', 'D_Ice_cream');
            }
}
<h4>MODEL</h4>
<select class="form-control"  id='model' name='model' onClick="getDestination()">
		<option value = "Cars">Cars</option>
    <option value = "Food">Food</option>
    </select>
     
    <h4>Car</h4>
    <select class="form-control"  id='destination' name='destination' onClick="getCriteria()" >
    </select>
	
  <input type= "button" id= "add" value="Add Destination" onclick= "Javascript:addRow()">
			</td>
	

Ответы [ 2 ]

0 голосов
/ 19 февраля 2019

Предполагая, что car и model представляют <option> элементы, вместо car.value и model.value попробуйте использовать атрибут text:

car.text
model.text
0 голосов
/ 19 февраля 2019

Используйте свойство опции .text, а не .value, например

row.insertCell(0).innerText = car.options[car.selectedIndex].text
...