html表单不能与IE8中的选择列表一起使用(IE7兼容性)

时间:2009-03-03 02:35:02

标签: html internet-explorer-8 html-form html-select

我遇到了一个ASP.net MVC项目的奇怪问题。

以下代码在Firefox,Chrome,Safari IE8中运行良好 - 但在IE7兼容模式下不是IE8

<%  Using Ajax.BeginForm("SetStatus", "StatusControl", New AjaxOptions With {.Confirm = "Are you sure you wish to change the Status?", .OnBegin = "Show_Updating", .OnComplete = "Hide_Updating"})%>
    <%=Html.Hidden("ItemID")%>
    <select id="SelectStatus" name="SelectStatus">
        <option selected="selected">Active</option>
        <option>Disable</option>
    </select>
    <input type="submit" value="OK" title="Set Status" class="small_button" />
<% End Using%>

当我在SetStatus方法中设置断点时,Form Collection列出了SelectStatus和ItemID。 SelectStatus解析为“”而不是“活动”或“禁用” 在所有其他浏览器中,这可以正确解析!

任何想法是怎么回事?我正在使用IE-8 RC1。

以下是SetStatus控制方法

<AcceptVerbs(HttpVerbs.Post)> _
 Function SetStatus(ByVal form As FormCollection)
    Dim status = form("SelectStatus")

    Select Case status
        Case "Active"
            Dim ItemID As Integer = form("ItemID")
            Return Restore(ItemID)
        Case "Disable"
            Dim ItemID As Integer = form("ItemID")
            Return Disable(ItemID)
    End Select

    Return Content("Errors")
End Function

1 个答案:

答案 0 :(得分:2)

尝试为选项

设置显式值
<option value="Active" selected="selected">Active</option>
<option value="Disable">Disable</option>