• 14 odgovora
  • 7.042 pregleda
autocomplete na dinamički kreiranim textbox kontrolama 13.05.2015. u 13:20 · pre 139 meseci #1
Pozdrav!

Imam jedan problem.

U tabeli imam polje koje nakon unosa podatka dinamički kreira novi red sa istim poljem.

Code:
<td >
        <input  name="serbroj" type="text" class ="serbroj"  value="" style="width:200px;"/>
  </td>  



na to polje je povezan

Code:
 $('.serbroj').autocomplete({
        minLength: 2,
        source: '@Url.Action("TraziRobu")'

      });


kada kreiram novi red sa tim poljem izgubi mi se autocomplete, jednostavno ne radi.

Ako neko ima predlog kako da rešim problem....

Hvala!

Patak
Re: autocomplete na dinamički kreiranim textbox kontrolama 13.05.2015. u 14:01 · pre 139 meseci #4
Moraš da pozoveš ponovo skript za autocomplete JER! to novo polje
nije postojalo u trenutku kada se onaj skript izvršio (verovatno kada se prvi put učitala stranica).

Ovo obično važi za 99% slučajeva kada nešto dinamički dodaješ
a treba da se oživi preko skript plugina - nebitno da li je plugin autocomplete ili nešto drugo.
Re: autocomplete na dinamički kreiranim textbox kontrolama 13.05.2015. u 14:05 · pre 139 meseci #5
Pa da ...

U tom polju se preko bar code unosi barcod, ako nema barcode on kucanjem u to polje se pojavljuje autocomplete.

Ovo je deo code koji kopira predhodni red

Code:
 var $newRow = $('#TemplateRow').clone(true);

                            $newRow.find('.serbroj').val($("").find('.serbroj').val());

                            $newRow.find('.roba').val($("").find('.roba').val());

                            $newRow.find('*').andSelf().removeAttr('id');

                            $('#grupa_kontrola_za_verifikaciju tr:last').after($newRow);



Da li tu treba da dodam autocomplete ?
Re: autocomplete na dinamički kreiranim textbox kontrolama 13.05.2015. u 14:11 · pre 139 meseci #7
Kada sam dodao





Code:
var $newRow = $('#TemplateRow').clone(true);

                            $newRow.find('.serbroj').val($("").find('.serbroj').val());

                            $newRow.find('.roba').val($("").find('.roba').val());

                            $newRow.find('*').andSelf().removeAttr('id');

                            $('#grupa_kontrola_za_verifikaciju tr:last').after($newRow);


$('.serbroj').autocomplete({

            minLength: 2,
            source: '@Url.Action("TraziRobu")'

          });


ništa se nije desilo...isto radi samo na prvom

molim za pomoć...
Re: autocomplete na dinamički kreiranim textbox kontrolama 13.05.2015. u 14:17 · pre 139 meseci #8
Jel ti je ovaj skript u razor view-u ili je standalone u posebnom fajlu?
Pitam zbog onog '@Url.Action("TraziRobu")'...
Jel vidiš u konzoli browsera neku grešku?
Re: autocomplete na dinamički kreiranim textbox kontrolama 13.05.2015. u 14:21 · pre 139 meseci #10
Ovako bi moralo da radi (u funkciji za novi red):

Code:

$newRow.find('.serbroj').autocomplete({
            minLength: 2,
            source: '@Url.Action("TraziRobu")'
          });
Re: autocomplete na dinamički kreiranim textbox kontrolama 13.05.2015. u 16:24 · pre 139 meseci #13
Milsim da nema ni smisla da pokušavaš preko bilo kakve "live" varijante
kada ni na "direkt" neće da proradi.

Prvo što bih sledeće tražio jeste neki problem u napravljenoj kopiji reda - otvori 4 očiju
lako može da bude da tu nešto ne valja, možda struktura, možda atributi,
možda "name" duplikat inputa, ...

Na kraju, udari hard-code najprostije generisanje inputa pa vidi da li na njega hoće da zakači.
Eksperimentiši - kreneš od najprostijeg ka složenijim slučajevima (svaki slučaj te košta par desetina sekundi rada),
i tim pristupom ćeš da sigurno da dođeš do momenta kad nešto prestaje da radi - i kazaće ti se šta je problem.
Re: autocomplete na dinamički kreiranim textbox kontrolama 13.05.2015. u 16:58 · pre 139 meseci #15
ako nekog muči isti problem...evo rešenja..

morao sam da novi red dodam ovako....


Code:
$("#grupa_kontrola_za_verifikaciju").append("<tr><td><input  type='text' class ='serbroj'  value='' style='width:200px;'/></td><td> <input type='text' class='roba' name='roba'></td> <td> <input type='text' class='id_robe' name='id_robe'> </td>  <td> <input type='submit' name='DeleteBoxRow' value='Obriši'  class='DeleteBoxRow' /></td></tr> ");



možda nije neko rešenje ali radi...

Hvala Dušane na pomoći!!

Pozdrav!
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme