Anonymní profil NeregistrovanyHookyns – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil NeregistrovanyHookyns – Programujte.comAnonymní profil NeregistrovanyHookyns – Programujte.com

 

Příspěvky odeslané z IP adresy 88.101.12.–

NeregistrovanyHookyns
JavaScript, AJAX, jQuery › jQuery sortable, reset pozic
20. 12. 2015   #207437

V pohodě, nemáš za co, rád pomůžu. :)

Bohužel je to chyba spousty "JavaScripterů". Dnes všichni říkají ať používáte knihovny, proč si něco sakra píšete sami? Pak bohužel vznikají tyto situace, kdy si prostě neporadíte, protože jste na ty knihovny až moc fixovaní a nemáte základy.

Trošku OT:
Kvůli době knihoven přibývá počet "JavaScripterů", ale ne počet JavaScripterů. To je taky důvod, proč jsem pod nabídkou JavaScript Programátor našel popis spíše HTML kodera, který jen sem tam zavolá např. .fade() z jQuery. :D A důvod, proč opravdový JavaScript programátor, který se v JS zabývá OOP a řeší výkon aplikace, dostává cca 100 000 Kč/měsíc. Já jsem za to jen rád. :D Jen si potom kodeři myslí, že jsou JS developeři a znalost JS upadá, což už je k zamyšlení.

NeregistrovanyHookyns
JavaScript, AJAX, jQuery › jQuery sortable, reset pozic
20. 12. 2015   #207431

Nevím jestli jsem tě pochopil správně, snad ano. Předpoklad pro správnou funkci mé úpravy je, že idNumber je pouze číslo položky (vždy číslované od 1), které říká, kolikátá ta položka je. Jestli je to nějaký identifikátor pro server - jak jsem si z počátku myslel - tak jsem tě pochopil špatně a má úprava ti nebude k ničemu.

$("#sortableGalerie").sortable({containment: 'document', tolerance: 'pointer',
	cursor: 'pointer', opacity: 0.60,
	update: function(event, ui) {
		var list = [];
		var tmp;

		$("#sortableGalerie li").each(function(i) {
			tmp = $(this);
			list.push(tmp.attr('data-id-number'));
			tmp.attr('data-id-number', i + 1);
		});

		var listString = list.toString();
		console.log(listString);

		$.nette.ajax({
			type: 'GET',
			url: "?do=changeOrder",
			data: {
				list: listString
			}
		});
	}
});

Jediné co jsem udělal je, že po zapsání položek do seznamu přepisuji jejich IDčka, aby odpovídali jejich novým pozicím. BTW, idNumber jsem si změnil na data-id-number.

NeregistrovanyHookyns
JavaScript, AJAX, jQuery › Bootstrap Formulár
19. 12. 2015   #207423

Pokud ti dělá problém nějaký script, tak zkus debugovat pomocí console.log(); Do něj můžeš házet třeba výsledky selektorů; console.log($("button#submit").get(0)); Přidal jsem tam navíc get(0), který vrátí skutečný element z DOMu, ne jeho jQuery obal, takže na první pohled víš co ti to najde.

Na první pohled máš ale špatně selektory!

$("button#submit") hledá element button, který má atribut id s hodnotou submit.
Našel jsem button, ale nemá id submit, alespoň jsem si toho nevšiml.

Ten samý problém u $('form.registracia'), tohle hledá element form s class registracia. Opět vidím form, ale nemá class registracia, ale má id form-registracia.

Řešení?

Nezkoumal jsem ten kód, říkám pouze co vidím na první pohled. Zkus tedy opravit selektory a uvidíš.

Zkus upravit button.
z:
<button type="submit" class="btn btn-primary btn-block"><span class="glyphicon glyphicon-plus-sign"></span> Registrácia</button>
na:
<button type="submit" id="submit" class="btn btn-primary btn-block"><span class="glyphicon glyphicon-plus-sign"></span> Registrácia</button>
... jen jsem přidal ID

A jelikož form již ID má, tak uprav spíše JS selektor, tento řádek:
data: $('form.registracia').serialize(),
za
data: $("#form-registracia").serialize(),

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý