Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> js - wstawienie do inputa wartości po kliknięciu w tekst., jak poprawnie wykonać zapytanie.
casperii
post 6.06.2016, 22:08:40
Post #1





Grupa: Zarejestrowani
Postów: 681
Pomógł: 28
Dołączył: 14.08.2014

Ostrzeżenie: (0%)
-----


Panowie proszę mi wytłumaczyć dlaczego poniższy kod nie działa jak należy:

  1. $('div.ilosc').click(function () {
  2. var $this = $(this);
  3. if (!$this.children('input').length) {
  4. var wartosc = $this.text();
  5. //alert('to wyswietli poprawnie' + wartosc);
  6. $this.empty().append($('<input type="text">').attr('value', wartosc)).append('&nbsp;');
  7. }
  8. });


powyższy kod nie wstawia w input wartości , zmiana na .val(wartosc) też nic nie daje.
Natomiast jeśli wyświetlę alert(wartosc) to pokazuje poprawną wartość, o co chodzi?
Go to the top of the page
+Quote Post
ZenekN
post 7.06.2016, 07:10:32
Post #2





Grupa: Zarejestrowani
Postów: 419
Pomógł: 5
Dołączył: 7.08.2012

Ostrzeżenie: (0%)
-----


https://jsfiddle.net/bskdfo1m/1/

Ten post edytował ZenekN 7.06.2016, 07:10:46
Go to the top of the page
+Quote Post
casperii
post 7.06.2016, 07:23:38
Post #3





Grupa: Zarejestrowani
Postów: 681
Pomógł: 28
Dołączył: 14.08.2014

Ostrzeżenie: (0%)
-----


Nie zrozumiałeś @ZeneKN
Twój kod przedstawia kopiowanie z do input.

Moim celem jest po kliknięciu w wartość, zmienienie tej wartości na input oraz wstawienie tej wartości w ten input.
Go to the top of the page
+Quote Post
rad11
post 7.06.2016, 08:19:50
Post #4





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


https://jsfiddle.net/bskdfo1m/7/
Go to the top of the page
+Quote Post
casperii
post 7.06.2016, 19:38:25
Post #5





Grupa: Zarejestrowani
Postów: 681
Pomógł: 28
Dołączył: 14.08.2014

Ostrzeżenie: (0%)
-----


@rad11 okazało się że mój kod też wstawiał tylko że jakoś dziwnie wartość była schowana na środku inputa.
Mam jeszcze pytanie odnośnie kodu:

  1. $('div.ilosc').click(function () {
  2. var $this = $(this);
  3. if (!$this.children('input').length) {
  4. var wartosc = $this.text();
  5. $this.empty().append($('<input autocomplete="off" type="text" name="ilosc" style="width:35px;">').attr('value', wartosc)).append('&nbsp; <img src="/images/button_ok.png" class="save_button_ok">');
  6.  
  7. //jeśli pokazono przycisk OK - wstawiamy kolejną funkcje
  8. $('.save_button_ok').click(function () {
  9. var wartosc_input = $('input[name="ilosc"]').val();
  10. alert('ok' + wartosc_input);
  11. });
  12. //koniec dodatkowej funkcji
  13.  
  14. }
  15. });
  16.  



czyli załóżmy że z bazy pokazuje mi się wartość 10 - klikam na nią tworzy mi się input z wartością 10 oraz przycisk w formie IMG, po kliknięciu na niego pobieram wartość, póki co pobiera mi tylko dla 1 rekordu, co robię źle ?
Go to the top of the page
+Quote Post
LowiczakPL
post 10.06.2016, 18:30:25
Post #6





Grupa: Zarejestrowani
Postów: 531
Pomógł: 55
Dołączył: 3.01.2016
Skąd: Łowicz

Ostrzeżenie: (0%)
-----


pobierasz dla pierwszego lepszego INPUTA o nazwie ilosc jeśli chcesz pobrać dla konkretnego to musi on być w kontenerze lub dla elementu przed IMG czyli

  1. $('.save_button_ok').click(function () {
  2. var wartosc_input = $(this).prev().val();
  3. alert('ok' + wartosc_input);
  4. });


--------------------
Szukam zleceń Symfony, Laravel, Back-End, Front-End, PHP, MySQL ...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 11:44