在一组选项中,我可以确定当前选择的值是否仅使用javascript手动设置vs defaulting(我无法修改html,因为我正在使用构建框架功能)。
<select>
<option value="a">A</option>
<option value="b">B</option>
<select>
应与
区别开来<select>
<option value="a" selected="selected">A</option>
<option value="b">B</option>
<select>
即使两者都有A选中。
Javascript将在页面加载时运行。我需要判断html是否是从服务器发送的,如果没有,则设置selectedIndex = -1
答案 0 :(得分:1)
使用onchange
事件,我们可以标记用户已选择它。
var selection = document.getElementById('selection');
selection.onchange = function(){
user_selected = true;
}
使用这样的标记:
<select id="selection">
<option value="a">A</option>
<option value="b">B</option>
<select>
这是一个fiddle...
答案 1 :(得分:0)
尝试使用if语句为您的值匹配选择...此外,还有超级简单的jquery选项...如果您可以使用jquery。
<script>
var selectedOption = document.getElementsByTagName("select");
if (!selectedOption.options[selectedOption.selectedIndex].defaultSelected) alert("select has changed");
</script>