formulaire html ne fonctionne pas avec la liste de sélection dans IE8 (compatibilité IE7)
-
03-07-2019 - |
Question
J'ai rencontré un problème étrange avec un projet ASP.net MVC.
le code suivant fonctionne très bien dans Firefox, Chrome, Safari IE8 - MAIS pas IE8 en mode de compatibilité IE7
<% 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%>
Lorsque je définit un point d'arrêt dans la méthode SetStatus, la collection de formulaires répertorie SelectStatus et ItemID. SelectStatus se résout en " " au lieu de " Actif " ou " Désactiver " Dans tous les autres navigateurs, cela résout correctement!
Une idée de ce qui se passe? J'utilise IE-8 RC1.
Ci-dessous la méthode 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
La solution
Essayez de définir une valeur explicite pour l'option
<option value="Active" selected="selected">Active</option>
<option value="Disable">Disable</option>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow