2013-04-11 11 views
6

Mam siatkę kendoui z niestandardowym popupem do edycji.Jak zmienić wartość wejściowego html związanego z kendo

W tym popup mam wejście który jest związany z wartością Grid:

<input type="text" class="k-input k-textbox" id="test" data-bind="value:SearchFilter"> 

to działa prawidłowo. Kliknij edytuj w siatce, zmień wartość w polu tekstowym, a wartość zostanie przeniesiona do siatki.

Ale teraz chcę zmienić wartość pola tekstowego w javascript .. Więc teraz mam to:

$('#test').val("testvalue"); 

to rzeczywiście zmienia wartość pola tekstowego, ale po zapisać nową wartość nie jest propagowane do siatki. Zgaduję, ponieważ w polu tekstowym nie ma żadnych zmian.

Jak to działa?

Odpowiedz

24

Potrzebujesz symulować wydarzenie zmiany. Wypróbuj ten kod:

$('#test').val("testvalue").change(); 
+1

Działa !! Dzięki. – Flores

+0

Dzięki .. Działa .. Próbowałem wielu sztuczek, ale to jest niesamowite ... :) – Zohaib

+0

, ale również wyzwala wymagane podpowiedzi do sprawdzania poprawności. kiedy wartość ma wartość wejściową, nie powinna otwierać wymaganej podpowiedzi msg. Proszę o pomoc ...? – Zohaib

3

Próbowałem powyższej odpowiedzi, ale nie działało dla mnie. Chociaż wartość rzeczywiście się zmieniła, pogląd ten nie odzwierciedlał tego faktu. To zadziałało dla mnie:

 var myvar = $("#myid").data("kendoNumericTextBox"); 
     myvar.value("newValue"); 
     myvar.trigger("change", { value: myvar.value() });