網頁

2013年5月30日

[html, javascript] 使用javascript檢查select選項是否重覆

在網路上找了很多檢查欄位重覆的範例,發現使用的原理及方式都大同小義,此範例取其各家優點,做了點簡化及改良。


範例:
<head>
<meta content="text/html; charset=utf-8" http-equiv="content-type">
</head>
<body>
<select name='field[0]' >
<option value='' selected>
<option value='date'>交易日期
<option value='time'>交易時間
<option value='amount'>交易金額
</select>
<select name='field[1]' >
<option value='' selected>
<option value='date'>交易日期
<option value='time'>交易時間
<option value='amount'>交易金額
</select>
<select name='field[2]' >
<option value='' selected>
<option value='date'>交易日期
<option value='time'>交易時間
<option value='amount'>交易金額
</select>

<script>
function changefield(t){
    var o = document.getElementsByTagName('select');
    var d = new Array();
    for(var i=0; i<o.length; i++){
        var v = o[i].value;
        if (v){
            if (d[v]){
                alert("選項重覆!");
                t.value = '';
                break;
            }else{
                d[v] = true;
            }
        }
    }
}
</script>
</body>