2016-12-03 11 views
-1

ich benutze htmlhelper dropdownlist mit Rasiermesser und setze es, s-Wert durch jquery. es funktioniert nicht.wie man den vorgewählten Wert der Dropdownliste in jquery einstellt

@Html.DropDownList("Gendar", new List<SelectListItem> { 
    new SelectListItem { Text="Are You Male or Female", Value="Are You Male or Female" }, 
    new SelectListItem { Text="Male", Value="male" }, 
    new SelectListItem { Text="Female", Value="female" } 
}, new { @class = "form-control" } 


<script> 
    ($(this).attr("data-Gendar") == "Male" ? $("#Gendar[value='male']").prop("selected", true) : $("#Gendar[value ='female']").prop("selected", true)); 
</script> 
+0

Können Sie erklären, was nicht geladen ist Arbeiten. –

+0

Was versuchst du hier zu machen? Dein Skript macht überhaupt keinen Sinn. '$ (this)' bezieht sich auf das 'Window'-Objekt! Es hat kein Attribut namens "data-Gendar" und auch nicht die Dropdown-Liste, die Sie generieren. Ihre erste Option macht keinen Sinn, aber um die gewählte Option zu setzen, setzen Sie den Wert der Eigenschaft 'Gendar' in der Methode GET auf" Männlich "oder" Weiblich ", bevor Sie das Modell an die Ansicht –

+0

übergeben Erklären Sie mit Hilfe von JavaScript, welches Ereignis die Änderung auslösen soll (und verwenden Sie $ $ ('# Gendar'). val ('männlich'); 'oder' $ ('# Gendar'). val ('weiblich'); ' –

Antwort

0
set on change event, like: 
    @Html.DropDownList("Gendar", new List<SelectListItem> 
           { 
           new SelectListItem { Text="Are You Male or Female", Value="Are You Male or Female" }, 
           new SelectListItem { Text="Male", Value="male" }, 
           new SelectListItem { Text="Female", Value="female" } 
           }, new { onchange = "onChange(this)" }) 

//js 
<script> 
    function onChange(e) { 
     (e.value == "male" ? $("#Gendar[value='male']").prop("selected", true) : $("#Gendar[value ='female']").prop("selected", true)); 
    } 
</script> 
+0

es funktioniert nicht –

+0

hast du jQuery library geladen? –

+0

ich kopiert prop (" ausgewählt "," ausgewählt ") ersetze es mit meinem prop (" ausgewählt ", wahr) aber immer noch das ergebnis ist gleich .. .it funktioniert nicht –

0

denke ich Ihren Code Notwendigkeit ausgeführt zu Bett, wenn das Dokument fertig ist und die Seite vollständig

versuchen diese

<script> 
(function() { 
    ($(this).attr("data-Gendar") === "Male" ? $("#Gendar[value='male']").prop("selected", true) : $("#Gendar[value ='female']").prop("selected", true)); 
}());   

Verwandte Themen