Html选择下拉列表 - 如何从服务器代码中选择所选值

时间:2011-09-27 17:24:03

标签: asp.net-mvc-3 razor

我有一个选择列表,说明该国的州,我有一个帮手,可以轻松地包含在任何形式。 (删除大多数选项以使其简短)。

我将存储在数据库中的当前选择的值称为“CA”。在将列表呈现给用户之前,如何将selected =“true”设置为选项CA?

@helper StateSelect(string name = "State")
    {
    <select name="@name" id="@name" class="required">
        <option value="">-- Select -- </option>
        <option value="AK">Alaska</option>
        <option value="AL">Alabama</option>
        <option value="AR">Arkansas</option>
        <option value="AZ">Arizona</option>
        <option value="CA">California</option>
        <option value="CO">Colorado</option>
        <option value="CT">Connecticut</option>
        <option value="VA">Virginia</option>
        <option value="VT">Vermont</option>
        <option value="WA">Washington</option>
        <option value="WV">West Virginia</option>
        <option value="WI">Wisconsin</option>
        <option value="WY">Wyoming</option>
    </select>
}

1 个答案:

答案 0 :(得分:0)

正如Darin Dimitrov所说,内置的东西会更好。但是,如果您确实需要,我认为您有几个选择:

  1. 将代码添加到每一行:
    • <option value="CA" @(name == "CT" ? "selected=selected" : "")> Connecticut</option>
  2. 只需将所选项目重新添加到列表顶部即可
    • 这使代码更清晰,所选选项只在顶部重复(并在那里选中),在整个列表之前