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

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

 

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

Joshua
JavaScript, AJAX, jQuery › jQuery změna vyběru select b…
4. 8. 2011   #145750

TO 132..... díky za reakci, to jsou "eskejpovací" znaky z php. Bohužel trim to nevyřešil a contains bych podle mně použít nemohl například vyrobce dva výrobci xxx a xxx-comercial při výběru xxx by se mi mohlo stát, že se mi vybere xxx-comercial což nechci,...

TO Kobi: s tím live() jsem to nějak nepochopil, vůbec nevím jaký bych měl použít ten event pro ajax,... niceméně jsem si našel svojí cestičku,...

Pro zajímavost, moje řešení spočívá v úpravě funkce která volá ajax a vkládá data na místo, protože jsem během dneška přidal další funkčnosti udělám je malý opis řešeného problému,..

Tedy přidal jsem do funkce parametr který je bud prázný nebo nese předchoží vybraný prvek. Pokud nese předchozí vybraný prvek tak po ready() (tedy dokončení práce s DOM) se označí požadovaná hodnota jako vybraná

function hledat_produkt(par_1, par_2, par_3, predchozi_vyrobce) {
$.post(adresa.html, {parametr_1: neco}, function(result) {
	$(par_2).empty();
	if(predchozi_vyrobce == "") {
		$(par_2).append(result);
	} else {
		$(par_2).append(result).ready(function() {
			$(par_2"+ option[value='"+predchozi_vyrobce+"']").attr("selected", true);
		});
	}
});
}

zatím to vypadá, že to funguje uvidíme po delsím testování. Ještě jednou děkuji za Váš čas :-)

Joshua
JavaScript, AJAX, jQuery › jQuery změna vyběru select b…
3. 8. 2011   #145652

Asi jsem to tam moc schoval.

Problém je, že po načtení nových dat se "nevyselectuje" požadovaná hodnota = select zustane tak jak ho ajax načetl místo toho aby se se zobrazila původní hodnota,....

Za odkaz děkuji večer to prostuduji

Joshua
JavaScript, AJAX, jQuery › jQuery změna vyběru select b…
2. 8. 2011   #145601

Ahoj,

Nejdřív teoreticky co vůbec dělám, asi možno přskočit:

snažím se udělat trošku inteligentní formulář pomocí ajaxu a jQuery. Ve formuláři mám několik select boxů které představují kategorie, které jdou pěkně zasebou (hlavni_kategorie,typ_produktu, vyrobce, model, parametr_produktu). Při změně obsahu select boxu se do následujícího načtou nová data pomocí ajaxu.

To funguje podle představ. Nicméně pokud si uživatel prokliká do poslední kategorie a chtěl by se podívát na jiný typ_produktu (což je druhá kategorie) tak doposud jsem všechny následující smazal a nutím uživatele klikat odznova. Takže se snažím aby klikat nemusel. Ajaxem načtu znova data s novou podmínkou a budu hledat jestli je tam předchozí hodnota

Pokud jste přeskakovali tak takdy problém prakticky:

<select class=\"kategorie_select\"></select>
<select class=\"produkt_select\"></select>
<select class=\"vyrobce_select\"></select>
<select class=\"model_selec\"></select>
<select class=\"obsah_select\"></select>

#rekneme ze jsem zmenil select pro produkt
#následující kód je funkce které je zavolána pomoci change
#uložim si předchozí výběr
kateogrie = $(".kategorie_select").children("option:selected").attr("value");
produkt = $(".produkt_select").children("option:selected").attr("value");
vyrobce = $(".vyrobce_select").children("option:selected").attr("value");
model = $(".model_select").children("option:selected").attr("value");
parametr = $(".obsah_select").children("option:selected").attr("value");

#nactu nová data a vlozím je do selectu pro vyrobce
hledat_produkt(".produkt_select", ".vyrobce_select");
#předchoží funkce mi zrestartovala výběr select boxu vyrobce takze tam chci načíst předchozí hodnotu
$(".vyrobce_select option[value='"+vyrobce+"']").attr("selected", true);
#a tadyto je problém, protože se mi ten option nevybere, hledaný option tam následně mohu dohledat ale jquery ho prostě ignoruje ignoruje,..

budu rád za každou radu, zkoušel jsem už různý opičárny jako

$(function() {
    hledat_produkt(".produkt_select", ".vyrobce_select");
}).ready( function() {
    $(function() {
        $(".vyrobce_select option[value='"+vyrobce+"']").attr("selected", true);
    });
});

ale zatím bez úspěchu,..
 

 

 

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