2 Stimmen

jQuery aktivieren/deaktivieren Sie anzeigen/ausblenden Schaltfläche w / SELECT-Optionen. Verbleibende Optionswerte abrufen

Ich habe eine Auswahlliste, die mit den Werten aus einem Textfeld gefüllt wird. Ich habe auch zwei Schaltflächen: eine Schaltfläche zum Hinzufügen, die den eingegebenen Wert zur Auswahlliste hinzufügt, und eine Schaltfläche zum Entfernen, die den eingegebenen Wert aus der Auswahlliste entfernt. Ich möchte Folgendes mit jQuery tun:

  1. Wenn der in das Textfeld eingegebene Wert NICHT VERFÜGBAR in der Auswahlliste die Schaltfläche Hinzufügen einblenden und die Schaltfläche Entfernen ausblenden.
  2. Wenn der in das Textfeld eingegebene Wert VERFÜGBAR in der Auswahlliste, blenden Sie die Schaltfläche Hinzufügen aus und zeigen Sie die Schaltfläche Entfernen an.
  3. Wenn die Auswahlliste LEER die Schaltfläche "Hinzufügen" anzeigen und die Schaltfläche "Entfernen" ausblenden.

Hier ist ein 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();
   });

Die Schaltfläche zum Entfernen wird angezeigt, wenn ich den ersten Wert hinzufüge, aber wenn ich den Wert entferne, wird die Schaltfläche nicht wieder angezeigt.

UPDATE:

Okay, ich habe es jetzt so geändert.

$('#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();
   }
});

die Schaltfläche wird immer noch nicht ausgeblendet, wenn kein Wert in SELECT enthalten ist. Ich habe es auch mit der Option probiert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X