jquery programmgesteuert klicken Sie auf neues dom-element

Ich versuche zu tun, etwas tricky (zumindest für mich) in jquery. Ich habe eine checkbox, die gebunden ist, um eine Funktion namens add_course die wie folgt aussieht:

    function add_course(){
        var id = $(this).attr('id');
        if ($(this).is(':checked')){

            if($('#courseInput').val().search(id) < 0){
                $('#CourseSummary').append('<span id="cn'+id+'"><a href="#" class="courseDel" id="'+id+'">X</a> '+$('#course'+id+' a').html()+'<br/></span>');
                $('#courseInput').val(function(index,value){
                    return value+ id +',1;';
                });
                addTotal($('#price'+id).text());
            }
            imageSync();
        }else{
            //This is where my question refers to. 
            $('a#'+id+'.courseDel').click();
        }
    }

Wenn jemand prüft Sie die checkbox, wird ein span mit ein paar Daten und ein link zur Seite Hinzugefügt werden. Der neue link ist angeschlossen, um eine andere Funktion mit

$('.courseDel').live('click', del_course); 

del_course hat eine ganze Reihe von Sachen, die, genau wie add_course.

Wie Sie sehen können, in der add_course Funktion. Ich überprüfe ob die checkbox aktiviert wurde und nur Sachen tun, wenn es wurde.

hier ist del_course:

     function del_course(){
        var id = $(this).attr('id');
        $('#cn'+id).remove();
        $('#courseInput').val(function(index,value){
            return value.replace(id+',1;',"");
        });
        subtractTotal($('#price'+id).text());
        imageSync();
    }

Ich würde gerne den anderen Teil meiner add_course Funktion auslösen, die del_course für den entsprechenden link, hab Hinzugefügt, wenn das Kontrollkästchen aktiviert wurde. Funktioniert das nicht. Ich habe wahrscheinlich über komplizierte etwas.

hier ist der html-Code für die checkbox (ein Beispiel von einem von Ihnen):

<input type="checkbox" class="courseAdd" name="courseAdd" id="204"/>

hier ist der html-Code für den link, der Hinzugefügt wird, wenn jemand Klicks auf eine checkbox:

<span id="cn204"><a href="#" class="courseDel" id="204">X</a> Course Title<br/></span>

Es funktioniert großartig, wenn jemand auf den link klickt, aber wie kann ich es auslösen programmatisch?

  • 2 Elemente, die hier zu beachten: Erstens id sollten EINDEUTIG sein, nicht geteilt, wie Sie es haben und auch ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods ("."). w3.org/TR/html4/types.html auch stackoverflow.com/questions/70579/...
  • nach Wiederlesen die Frage, die ich bin nicht sicher, ob ich verstehe - was ist das problem, das Sie stoßen mit dieser Zeile: //Dies ist, wo meine Frage bezieht sich auf. $('a#'+id+'.courseDel').klicken Sie();
Schreibe einen Kommentar