我正在尝试从'select'标签显示一个子元素属性,并且我使用document.getElementsByTagName
命令来执行此操作,我期望的显示是'john dalton'看起来来源!但浏览器不显示因为我希望在警报中只是未定义的消息。我的来源是这样的:
<select style="" name="provinsi_id" class="form-control crud-edit
lookup-refresh" onchange="showoption();">
<option>john dalton</option>
<option>john rambo</option>
<script>
alert(document.getElementsByTagName('select')[0].childNodes[0].value);
<script>
答案 0 :(得分:1)
试试这个,
alert(document.getElementsByTagName('select')[0].childNodes[1].value);
第0个元素是文本元素。
答案 1 :(得分:1)
当您拥有<select>
时,您可以轻松访问这些选项。
document.getElementsByTagName('select')[0].options
&#34;选项&#34;是您的选择中所有选项的数组,因此您可以通过这种方式访问您的值:
document.getElementsByTagName('select')[0].options[0].value
您还可以通过以下方式获得快捷方式:
document.getElementsByTagName('select')[0][0].value
答案 2 :(得分:0)
如果我将静态代码编写为Nannakuhtum的样本,那么每个答案都运行良好,不幸的是在我的情况下,我使用javascript动态地填充选项值,
<html>
--------
<select style="" name="provinsi_id"
class="form-control crud-edit
lookup-refresh" onchange="tampilkota();">
</select>
------------
</html>
<script>
var dataprovinsi = <?php echo json_encode($dataprovinsi); ?>;
for (i=0; i< dataprovinsi.length; i++){
var option = document.createElement("option");
option.text = dataprovinsi[i]['nama'];
option.value = dataprovinsi[i]['nama'];
var select = document.getElementById("psg_provinsi_id");
select.appendChild(option);
}
function tampilkota(){
alert(document.getElementsByTagName('select')[0].childNodes[1].value);
}