2009-03-03 1 views
1

Ich bin auf ein seltsames Problem mit einem ASP.net MVC-Projekt gestoßen.HTML-Formular funktioniert nicht mit Select-Liste in IE8 (IE7-Kompatibilität)

der folgende Code funktioniert in Firefox, Chrome, Safari IE8 - aber nicht IE8 in IE7 Compatability Modus

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

Wenn ich einen Haltepunkt in der SetStatus Methode setzen die Formularsammlung SelectStatus und ItemID auflistet. Der SelectStatus wird in "" anstelle von "Aktiv" oder "Deaktiviert" aufgelöst. In allen anderen Browsern wird das Problem behoben!

Irgendeine Idee, was ist los? Ich benutze IE-8 RC1.

Unten ist die SetStatus Steuerverfahren

<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 

Antwort

2

Versuchen Sie, einen explict Wert für die Option Einstellung

<option value="Active" selected="selected">Active</option> 
<option value="Disable">Disable</option> 
+0

dies dank gearbeitet! –