jQuery aktivieren/deaktivieren ein - /ausblenden Taste w/ WÄHLEN Sie Optionen. Holen Verbleibende option Werte
Ich habe eine select-Liste wird aufgefüllt mit den Werten, die aus einem text-Feld. Ich habe auch zwei Schaltflächen: die Schaltfläche hinzufügen fügt den eingegebenen Wert in der Liste auswählen und die Schaltfläche entfernen entfernt den angegebenen Wert aus der select-Liste. Ich würde gerne die folgenden using-jQuery:
- Wenn der eingegebene Wert in das text-Feld ist NICHT VERFÜGBAR in der select-Liste, zeigen Sie die Schaltfläche hinzufügen und ausblenden der Schaltfläche "entfernen".
- Wenn der eingegebene Wert in das text-Feld ist VERFÜGBAR in der select-Liste, blenden Sie die add-Taste und zeigen Sie auf die Schaltfläche entfernen.
- Wenn die select-Liste ist LEER zeigen die Schaltfläche hinzufügen und ausblenden der Schaltfläche "entfernen".
Hier ist etwas code, den ich mir ausgedacht habe:
//Remove selected options
$('#removeButton').click(function() {
//$.map($('#addedchargeamtid :selected'), function(e) {
$.map($('#addedchargeamtid option'), function(e) {
var exp = $(e).text();
//Would like to have all the Option values in CVS format 0.00,1.99, etc...
//If removed this should also remove the value in the array
})
$('#removeButton').hide();
return !$('#addedchargeamtid :selected').remove();
});
//Add charge amount
$('#addedchargeamtid option:selected').focus(function() {
$('#removeButton').show();
});
Es zeigt die Schaltfläche "entfernen", wenn ich den ersten Wert, aber wenn ich entfernen Sie den Wert der button nicht anzeigen zurück.
UPDATE:
Okay, ich bearbeitet.
$('#removeButton').click(function() {
$('#addedchargeamtid :selected').remove();
$.map($('#addedchargeamtid option'), function(e) {
var exp = $(e).text();
alert(exp); //Need this in CSV format but I think it displays the correct values
})
//if($("#addedchargeamtid option").length > 0) { <-- Didn't work
if($("#addedchargeamtid").length > 0) {
$('#removeButton').show();
} else {
$('#removeButton').hide();
}
});
immer noch nicht verstecken Sie die Taste, wenn kein Wert in der SELECT. Habe es versucht mit der option als gut.
Von dem, was ich verstehe, Sie möchten, zeigen Sie die Taste, wenn Werte vorhanden sind und verstecken Sie die Taste, wenn Werte nicht vorhanden sind?
richtig dies ist, was ich Suche 🙂
"addedchargeamtid" der id-name der select-tag?
ja addedchargeamtid ist die id
InformationsquelleAutor Phill Pafford | 2009-05-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich glaube, Sie können überprüfen, um zu sehen, ob die option length >0, die sagen, dass er über die Werte und wenn nicht, dann ist es nicht vorhanden das heißt nicht Werte wie folgt:
Ich habe es funktioniert habe ich nur noch die Klick-Aktion für die Schaltfläche hinzufügen 🙂
habe noch eine Frage, müssen noch eine Schleife über alle die option Werte und haben Sie in der durch Kommas getrennten Wert (CSV) format. Beispiel: val1, val2, val3, etc... mit der Karte jetzt aber gibt es einen besseren Weg?
InformationsquelleAutor TStamper
Wenn verstehe ich das problem richtig, ich denke, Sie wollen dies ändern:
:
so, dass die event-handler Hinzugefügt wird, alle die wählen Sie die Optionen, nicht nur die aktuell ausgewählten, wenn der code ausgeführt wird. Und auch stellen Sie sicher, dass Sie diese Prozedur für alle neu erstellten Elemente, wie gut.
InformationsquelleAutor Matt Winckler
Machte ich einen schweren Bearbeiten der ursprünglichen Frage, vorausgesetzt, mein edit ist richtig, hier eine Lösung zu deinem problem:
XHTML:
JavaScript (meint oben genannten Dokument-Struktur):
InformationsquelleAutor Jake McGraw
Für die beste Antwort, Versuchen Sie folgenden code :
Fügen Sie Optionen, um den Tag Mit Jquery
http://www.formget.com/jquery-add-option-to-select/
InformationsquelleAutor Naveen Kolhe