n:href predanie parametra pomocou jquery

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Lukass445
Člen | 19
+
0
-

Zdravím,

do handle-u predávam parametre klasicky takto:

<a n:href="valueChange! $item->id, $item->value">

rád by som ale parameter c.2, teda $item->value predal cez jquery z inputu.
Vysvetlím, ako by som si to predstavoval:

<a n:href="valueChange! $item->id, $nette.jquery('#edit_value_'.$item->id).val()">

viem, že som náročný, no zjednodušilo by mi to prácu, ak by bolo možné danú hodnotu podobným princípom posunúť handle fcii v mojom presenteri.

Aurielle
Člen | 1281
+
0
-

V těchto případech musíš bohužel tvorbu odkazů obcházet a při kliknutí si hodnotu to předgenerovaného odkazu doplnit sám. Už z principu totiž nemůžeš kombinovat Latte zápis s jQuery, neboť Latte se kompiluje na serveru a Javascript až u klienta. Nebo to nějakým způsobem refaktorovat, třeba jako formulář.

Milo
Nette Core | 1283
+
0
-

@Lukass445 Jaké je workflow? Někdo vyplní input a pak klikne na odkaz? To zní jako formulář.

Lukass445
Člen | 19
+
0
-

Vďaka za odpoveď,

vymyslel som ale niečo iné. Nechcel som sa totiž zaťažovať formulármi, ak ide len o jednu hodnotu v riadku a tá editácia je pre všetky riadky prístupná.

Screen

Ide v podstate o administráciu latte poľa – $settings (ktoré je prístupné globálne, zadefinované v base presenteri) s kĺúčom name a hodnotou Hodnota

takze linku som pridal onclick=„return false;“ a nabindoval som si nan vlastny on click JS script:

var item_id = $(this).attr('item-data'); // umely atribut, ktory som pridal anchoru
var item_value = $('#part_page_table_value_1_'+item_id).val(); // takto dostanem hodnotu v inpute
var _href = $("#part_page_table_value_2_" + item_id).attr('href'); // aktualna linka, na moj handle
$("#part_page_table_value_2_" + item_id).attr('href', _href.replace(/value=[^&]+/, 'value='+item_value)); // takto zmenim handle-u linku
location.href = $("#part_page_table_value_2_" + item_id).attr('href'); // a nakoniec samotne "vykonanie kliku"
  • celé mi to funguje, všetko fičí ako má, no nie som si úplne istý, či je tento spôsob bezpečný.

Takže ešte jedna otázka – odporúčate mi to teda nastrkať do veľa veľa formulárov a odosielať to pomocou postu alebo to je bezpečné aj takto a môžem to tak teda nechať ?

spôsob prepisu href-u anchoru som našiel na stackoverflow.