Antworten auf deine Fragen:
Neues Thema erstellen

$(id) dynamisch ändern

R

Ronald77

Guest

Ich finde es einfach nicht wie ich die id zum ausblenden eines Blocks dynamisch ändern kann.

$("soll jedesmal geändert werden").fadeOut(300);
Die ID die beim Klick übergeben wird ist id und die zu ändernde id1 id2 id3 ... ist immer
mit einem z angehängt = id1z ,id2z, id3z ....


PHP:
$('.switch').click(function(el){ 
     var index = $(".switch").index(this);
     var i = index-1;
    var ele = $(".switch:eq("+(index-1)+")").val();
    var idx = '#'+$(this).attr('id')+'z';
    if (ele == 1){

$(this).addClass('switcher-off');
$("soll jedesmal geändert werden").fadeOut(300);
$(".switch:eq("+(index-1)+") option[value='0']").attr('selected',true);
$(".switch:eq("+(index-1)+") option[value='1']").attr('selected',false);

} else {
$(this).removeClass('switcher-off');
$("soll jedesmal geändert werden").fadeIn(300);
$(".switch:eq("+(index-1)+") option[value='1']").attr('selected',true);    
$(".switch:eq("+(index-1)+") option[value='0']").attr('selected',false);
    }

$("#testausgabe").append(ele +index+idx+"<br />");

    
});

Ich suche schon eine ganze weile und wäre für Hilfe dankbar.

Ronald
 
Zuletzt bearbeitet von einem Moderator:

Duddle

Posting-Frequenz: 14µHz

AW: $(id) dynamisch ändern

Könntest du bitte den Kontext erläutern, am besten mit einem Minimalbeispiel? Ich kann aus deiner Frage nicht so recht erkennen, was du machen willst.

Die id eines jQuery-Objektes (also z.B. $(this) ) kannst du jedenfalls mit .attr('id') holen, falls dir das weiterhilft.


Duddle
 
R

Ronald77

Guest

AW: $(id) dynamisch ändern

Ich habe in der Webseite mehrere switch Schalter (EIN/AUS).
Dazu gehören an ander Stelle auf der Webseit DIV Container die ein/ausgeblendet werden sollen.

Beim laden der Webseite werden die Anfanszustände aus einer Datenbank
per php gesetzt.

PHP:
function getSwitch($a,$b=0,$c,$d)
    {
        if (!$c){ $a = $b;    }    
        if($a)
        {
            $d = '<option value="0">Verbergen</option>
                  <option value="1" selected="selected">Anzeigen</option>                
                  </select>
                  <div class="switch switcher-on" id="'.$d.'"></div>';
        }else{
            $d = '<option value="0" selected="selected" >Verbergen</option>
                  <option value="1">Anzeigen</option>
                  </select>
                  <div class="switch switcher-on switcher-off" id="'.$d.'"></div>';                
            }        
        return $d;
    }

Joomla Parameter

PHP:
<div class="switch_container">
        <div class="switch_container_label fll">
            <label id="jform_grund_sw_extra1-lbl" for="jform_grund_urlanzeigen" class="hasTip" title="Extra Feld 1::Extra Feld nach dem Link anzeigen">Extra Feld 1</label>
        </div>
        <div class="switch_container_switch fll">
            <select id="jform_grund_sw_extra1"  class="switch"  name="jform[grund][sw_extra1]" style="display: none">
                <?php echo getSwitch($this->para->get('sw_extra1'),$this->param->get('sw_extra1'),$id,'sw_extra1'); ?>
        </div> 
    </div>
Der Schalter funktioniert einwandfrei. Bild und Select werden geändert.

Der ein auszublendende Container

PHP:
<div class="grid_16" id="sw_extra1z" >
        <div class="grid_5">
            <input type="text" name="jform[grund][leg_show_extra1]" id="jform_grund_leg_show_extra1" value="<?php echo $this->para->get('leg_show_extra1', JText::_('COM_IMGWEBLINKS_EXTRA'))?> "/>
        </div>
        <div class="grid_10">
            <input id="jform_leg_value_extra1" class="inputbox text" type="text" size="40" value="<?php echo $this->para->get('leg_value_extra1') ?>" name="jform[grund][leg_value_extra1]">
        </div>
    </div>
Beim Klick wird die id an jqery übergeben.
Der zu änderne Container ist diese id + z

Hier ist in idx die id = #show_extra1z -
var idx = '#'+$(this).attr('id')+'z';

doch hier nimmt er das nicht:

$("idx").fadeIn(300);

Sicherlich ist nur der Syntax falsch ???

Ich hoffe das das verständlicher ist.

Danke Ronald
 
Zuletzt bearbeitet von einem Moderator:

Duddle

Posting-Frequenz: 14µHz

AW: $(id) dynamisch ändern

Ja, die Syntax ist falsch. In idx steht "#show_extra1z", das willst du mit jQuery auswählen. Wenn du ein
Code:
$("idx")
machst, sucht er einen Tag namens idx, weil du die Zeichenkette "idx" übergibst. Du willst aber die Variable idx selbst übergeben, also brauchst du nur
Code:
$(idx)
schreiben.


Duddle
 
R

Ronald77

Guest

AW: $(id) dynamisch ändern

Vielen Dank !!!
Da hab ich aber auf der Leitung gestanden.

Es funktioniert.
Danke Ronald
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben