شكل أتش تي أم أل لا تعمل مع قائمة مختارة في IE8 (IE7 التوافق)

StackOverflow https://stackoverflow.com/questions/604891

سؤال

ولقد واجهنا مشكلة غريبة مع مشروع ASP.net MVC.

والتعليمات البرمجية التالية يعمل بشكل جيد في فايرفوكس، كروم، سفاري IE8 - ولكن لا IE8 في وضع التوافق 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%>

عند I تعيين نقطة فاصل في الأسلوب SetStatus مجموعة نموذج تسرد 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
هل كانت مفيدة؟

المحلول

وحاول تحديد قيمة واضحة للخيار

<option value="Active" selected="selected">Active</option>
<option value="Disable">Disable</option>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top