Avatar billede Monkeybrain Juniormester
23. juni 2015 - 14:43 Der er 1 kommentar

Vil ikke indsætte javascript :-(

Jeg har denne kode som skal indsætte nye felter i en række hvor der er nogle felter der skal være søgebare. Men uanset hvordan jeg vender og drejer den vil den ikke rigtig. så er det overhovedet muligt det jeg har gang i eller?


                var row = $('<div class="row" id="listItem_' + (counter_file + 1) + '" style="margin-bottom:10px;"></div>');

                var str = "<script>$(function() {$(\"#textnew\").autocomplete(";
                str += "{source:customerdata,";
                str += "minLength:4,";
                str += "select: function( event, ui ) {";
                str += "$( \"#labels\" ).val( ui.item.label );";
                str += "$( \"#stextnew\" ).val( ui.item.fornavn );";
                str += "$( \"#sporductnonew\" ).val( ui.item.efternavn );";
                str += "return false;";
                str += "}";
                str += "}).data( \"autocomplete\" )._renderItem = function( ul, item ) {";
                str += "return $( \"<li></li>\" )";
                str += ".data( \"item.autocomplete\", item )";
                str += ".append( \"<a style='font-size:12px; padding:10px; background-color:#f2f2f2; margin-bottom:2px; border:#f2f2f2 1px solid'>\" + item.label + \", \" + item.fornavn + \" \" + item.efternavn + \"</a>\" )";
                str += ".appendTo( ul );";
                str += "};";       
                str += "});";
                str += "</script>";
               

                var inputs = $("<div></div>").append(str);   


                var input = $('<div></div>').append('<div style="display:table; width:100%;"><div id="tablet" style="padding-right:10px; display:table-cell; width:100px;"><input class="moveable_list product" type="text" id="productnonew' + (counter_file + 1) + '" name="sproductnonew' + (counter_file + 1) + '" value=""></div><div id="tablet" style="padding-right:10px; display:table-cell;"><input class="sortid" name="sortnew' + (counter_file + 1) + '" type="hidden" value="' + (counter_file + 1) + '"><input class="moveable_list product" type="text" id="stextnew' + (counter_file + 1) + '" name="textnew' + (counter_file + 1) + '" value="Tekst"></div><div id="tablet" style="padding-right:10px; display:table-cell; width:80px"><input class="moveable_list qty" type="text" name="qtynew' + (counter_file + 1) + '" value="0" style="text-align:center"></div><div id="tablet" style="padding-right:10px; display:table-cell; width:100px"><input class="moveable_list price" type="text" name="pricenew' + (counter_file + 1) + '" value="0,00" style="text-align:right"></div><div id="tablet" style="padding-right:10px; display:table-cell; width:140px"><input class="moveable_list amount" type="text" value="0" readonly="readonly" style="text-align:right"></div><div class="button blue" style="width:30px;"><img src="/images/menu.png" /></div></div>');       

                inputs.appendTo(row);
                input.appendTo(row);
Avatar billede jakobdo Ekspert
23. juni 2015 - 22:44 #1
Det virker en smule omstændigt..
Dine javascript funktioner burde du kunne binde via:

$(document).on("click", "#textnew", function(event){
  alert("TextNew clicked");
});

Så vil den virke "altid"
Dog kan du kun have et element med samme ID.
Så overvej en klasse.

Og smid et "id" på eller måske noget ala:

data-mitid="identifier"...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester