开发中select下拉框的用法总结

select在开发中经常被用到,用于进行选项选择,我浅谈下select的用法

问题(1)如何选择select的option里面的值?
首先会用到一个方法 onchange();这个方法主要用于触发,选择框内容改变时间

实现代码:

<!doctype html>
<html>
<head lang="en">
    <meta charset="UTF-8">
</head>
<body>
    <select onchange="test(event)">
        <option>安静</option>
        <option>晴天</option>
        <option>七里香</option>
    </select>
    <script type="text/javascript"> function test (e) { var e = event ? event : window.event; alert(e.target.value); } </script>
</body>
</html>

开发中select下拉框的用法总结_第1张图片

问题2:可是在开发中,我们一般选择了内容只是为了显示,而真正要做的是和后台进行交互数据传输,这时候,我们为了尽可能减少http数据传输,所以一般会传 id 等作为数据传输标志,如何做?
开发中,option一般都是动态创建的,那么这时候,我们只需要给你动态创建一个自定义属性。那么如何获取自定义属性呢?

<!doctype html>
<html>
<head lang="en">
    <meta charset="UTF-8">
</head>
<body>

    <select onchange="test(event)" id="sel"></select>

    <script type="text/javascript"> //定义内容的json数据,一般从后台获取 var data = [ { name: '晴天', id: '1' }, { name: '安静', id: '2' }, { name: '七里香', id: '3' } ]; createOption('sel',data); //创建option function createOption(parentId, data){ var parentId = document.getElementById(parentId); for(var i=0; i<data.length; i++){ var opt = document.createElement('option'); //设置option的值 opt.innerHTML = data[i].name; //定义option的自定义值 opt.setAttribute('dataid', data[i].id); parentId.appendChild(opt); } } //选取自定义属性的方法 function test (e) { var e = event ? event : window.event; var target = e.target; var index = target.selectedIndex; alert("我的id="+target[index].getAttribute('dataid')); } </script>
</body>
</html>

结果图如下:

开发中select下拉框的用法总结_第2张图片

这就是我在开发中遇到的问题

你可能感兴趣的:(select)