1

我遇到了一个 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 方法中设置断点时,表单集合会列出 SelectStatus 和 ItemID。SelectStatus 解析为“”而不是“活动”或“禁用”在所有其他浏览器中,这可以正确解析!

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

下面是SetStatus Control方法

<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
4

1 回答 1

2

尝试为选项设置显式值

<option value="Active" selected="selected">Active</option>
<option value="Disable">Disable</option>
于 2009-03-03T03:02:21.510 回答