Hallo Ich entwickle eine Jquery-Anwendung, wo ich eine Dropdown-Liste und Gridview habe. Die erste Spalte von gridview enthält Ankreuzfelder und oben die Schaltfläche check all. Wenn ich zum Beispiel drei Zeilen innerhalb der Gridview überprüfe, müssen die entsprechenden Werte in der Dropdown-Listbox deaktiviert werden. Ich versuche es wie folgt. Dies ist der Code, um alle geprüften Werte aus Gridview zu erhalten.Wie verstecken Sie die Werte in jquery ausgewählten Dropdownliste?
var checkedValues = [];
$("#<%=gdvRegretletter.ClientID %> tr").each(function() {
if($(this).closest('tr').find('input[type="checkbox"]').prop('checked', true))
{
checkedValues += $(this).val();
}
});
Sobald i Werte in Array erhalten und wenn ich ich habe unten Code Dropdown gehen.
$('.limitedNumbSelect').change(function (e) {
$("#limitedNumbSelect > option").each(function() {
//if (this.value == checkedValues) If this.value is equal to any value from checkedValues then i want to hide that value inside dropdownlistbox.
// Here i want to hide all values of checkedValues array(values will be same in dropdownlistbox)
});
});
Ich versuchte wie folgt.
$('.limitedNumbSelect').change(function (e) {
var checkedValues = [];
$("#<%=gdvRegretletter.ClientID %> tr").each(function() {
if ($(this).closest('tr').find('input[type="checkbox"]').prop('checked', true)) {
checkedValues.push($(this).closest('tr').find('td:eq(2)').text().trim());
}
});
$(".limitedNumbSelect > option").each(function() {
var val = $(this).val();
alert(val);
var display = checkedValues.indexOf(val) === -1;
$(this).toggle(display);
$('.limitedNumbSelect option[value=' + display + ']').hide();
$(".limitedNumbSelect").find('option:contains(' + display + ')').remove().end().chosen();
});
});
Im obigen Code gibt es einen Fehler. Wenn ich zum Beispiel einen Wert aus der Gridview wähle, kann ich, wenn ich auf das Dropdown-Menü klicke, diesen Wert auswählen (beim ersten Klick). Bei einem zweiten Klick wird der erforderliche Wert ausgeblendet.
Der obige Code funktioniert nicht. Array checkedValues erfasst keine Werte.
Ich kann nicht herausfinden, was ich innen schreiben soll. Jede Hilfe wäre willkommen. Vielen Dank.
Danke. Problem ist $ ("# <% = gdvRegretetter.ClientID%> tr"). Je (function() { if ($ (this) .closet ('tr'). Find ('eingabe [typ = "checkbox"] ') .prop (' checked ', true)) { checkedValues + = $ (dieses) .val(); } }); Das funktioniert nicht. –