28. januar 2013 - 18:19Der er
12 kommentarer og 1 løsning
Function og $(this) problem!
Hejsa,
Jeg er ret ny til javascript, så derfor kan problemet være komplet latterligt nemt, men jeg fatter det simpelthen ikke. Jeg har søgt på Google, og jeg har forsøgt at finde ud af hvad problemet er i en del timer nu - jeg må simpelthen give op, og spørge jer.
Problemet er at jeg er i gang med en smule AJAX, hvor målet er at opdatere en database via en php-fil - dog ser det ikke ud til at jeg kan få mine informationer med fra de forskellige input, via min javascript/jQuery.
Lad os antage at jeg har 5 inputs (nogle gange færre, nogle gange flere - det kommer an på hvor mange rækker der er i databasen)
Det jeg her vil forsøge at gøre, er at hente attributten "id" - alt efter hvilken en af dem der bliver klikket på.
Indtil videre har jeg følgende:
function Accept(){ var term_name = $(".ProfilInput").attr("name");
.....en masse kode }
Jeg ved godt at der skal laves en variabel lignende det her:
var term_name = $(this).attr("name");
Men det virker simpelthen ikke. Variablen som står øverst finder godt nok et id, men det er der første id (den første input) - uanset hvilken en af de 5 overstående inputs der klikkes på.
Når man klikker på <input type="submit" value="Godkend 16" class="InputFelt" id="16" onclick="Accept()" /> ønsker jeg at id 16 bliver ført videre osv. osv.
Nogen der kan hjælpe mig? Det er et meget stort problem - 200 points - uanset sværhedsgraden, fordi for mig - er det svært.
@rotco: JavaScript koden, du viser i #3 er ikke almindelig JavaScript. Den er knyttet til JS-biblioteket, som hedder jQuery.
jQuery er også skrevet i JS, men bruger sin egen, proprietære syntaks. Du kan ikke bruge jQuery syntaks uden at importere biblioteket.
Hvis du gerne vil lære JavaScript, bør du ikke kaste dig ud i jQuery nu. Lær først helt almindelig JavaScript, og når du er blevet rigtig god til dét, har du baggrunden og forståelsen, som er nødvendig for at skrive god kode med jQuery =)
Tak olebole - jeg vil gerne lære JavaScript - problemet er egentlig bare min manglende tid og et personligt projekt der skal på benene nu her.
Jeg bør måske ikke selv rode med jQuery endnu, når jeg ikke er så god til JavaScript, men hér er det nok min tidsmangel der presser sig på :)
erikjacobsen - det virker stadig ikke, så jeg vælger lige at smide ALT kode relateret til den her function ind, så jeg måske kan fidne ud af/forstå hvorfor det er et problem for mig at få til at virke. Jeg værdsætter jeres hjælp!
<script type="text/javascript">
function rejectFriend(afvis){ //var term_name = $(".ProfilInput").attr("name"); var term_name = afvis.name; //Tester ny variabel
$('#propspectDiv').html(term_name); //printer lige det id ud der blev behandlet $('#data').css("display","block"); $('#data').html(data); }, 500); } }); } } </script>
Du blander jQuery- og alm. JavaScript-kode sammen - og du er spejlblank på begge områder. Det kan der ikke komme noget godt ud af.
Hvad årsagen er til, at du gerne vil lave det, har ikke den store betydning. Du er nødt til at lære noget helt grundlæggende JavaScript/DOM, før du kaster dig ud i sådan et projekt.
Jeg er vild med den gamle Bugatti Royale, men jeg bør nok prøve at bygge et par sæbekassebiler, før jeg kaster mig ud i at bygge en kopi af originalen *o)
Beklager at det har taget SÅ lang tid at svare på tråden. Jeg fandt aldrig ud af det, men besluttede mig for at det måske var lidt over mit niveau endnu, så jeg venter lidt med jQuery osv.
Smid et svar olebole og erikjacobsenerikjacobsen :)
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.