答案 0 :(得分:0)
脚本有错误,您应该使用函数:
function test()
{
var m = document.getElementById("selection").value;
alert(m);
}

<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<div class="row">
<select id="selection" class="event-type-select">
<optgroup label="categorygroup1">
<option value="category1">category1</option>
</optgroup>
<optgroup label="categorygroup2">
<option value="category2" selected="selected">category2n</option> <!-- with selected="selected" you set the default -->
<option value="category3">category3</option>
</optgroup>
<optgroup label="categorygroup3">
<option value="category4">category4</option>
</optgroup>
</select>
</div>
<div class="row">
<button type="submit" class="btn btn-default" onclick="test()"> filter </button>
</div>
</body>
</html>
&#13;
答案 1 :(得分:0)
首先,这个问题基本上包含两个问题,但不要这样做。
其次,您只是错过了<select>
字段的预选。
选择不起作用
提交表单时,会将值发送到服务器。服务器处理值并再次呈现页面。因此,您必须根据所选值调整渲染。假设您只是将选定的值作为字符串传递给视图,视图代码可能如下所示:
@model string
...
<select class="event-type-select" id="selection" >
<optgroup label="categorygroup1">
<option value="category1" @if (Model == "category1") {<text>selected</text>}>category1</option>
</optgroup>
<optgroup label="categorygroup2">
<option value="category2" @if (Model == "category2") {<text>selected</text>}>category2n</option>
...
</select>
我也希望在网站的其他部分显示所选的选项。
然后将选区存储在某处(例如DB),在呈现不同部分之前检索所选值,并将其输出到不同部分中。