Pergunta

Eu me deparei com um problema estranho com um projeto ASP.net MVC.

o seguinte código funciona bem no Firefox, Chrome, Safari IE8 - mas não IE8 no modo IE7 compatibilidade

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

Quando eu definir um ponto de interrupção no método SetStatus as listas coleção de formulário SelectStatus e ItemId. As resoluções SelectStatus para "" em vez de "Ativo" ou "Desativar" Em todos os outros navegadores isso resolve corretamente!

Qualquer ideia é o que está acontecendo? Eu estou usando IE-8 RC1.

Abaixo está o método de controle 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
Foi útil?

Solução

Tente configurar um valor explícito para a opção

<option value="Active" selected="selected">Active</option>
<option value="Disable">Disable</option>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top