Множественные выбранные значения оповещают половину
Я хотел бы, чтобы Javascript предупреждал об имени всего сотрудника (имя и фамилия), но с этим кодом по какой-то причине он показывает только имя. Любые идеи о том, как решить эту проблему?
Вот мой код:
if ( $even1 % 2)
echo "<option value=". $employee_firstname . " " . $employee_lastname . ">". $employee_firstname . " " . $employee_lastname . "</option>";
else
echo "<option value=". $employee_firstname . " " . $employee_lastname . ">". $employee_firstname . " " . $employee_lastname . "</option>";
JavaScript
var List = document.getElementById('slcEmp');
var x = 0;
for (x = 0; x < List.length; x++) {
if (List[x].selected) {
alert(List[x].value);
}
}
1 ответ
Решение
Вам необходимо поместить значение атрибута в кавычки, так как оно содержит пробел:
echo "<option value='". htmlentities($employee_firstname) . " " . htmlentities($employee_lastname) . "'>". $employee_firstname . " " . $employee_lastname . "</option>";
^ ^
Вы также должны использовать htmlentities()
если имя содержит специальные символы (например, O'Leary
).