Ajax a jQuery suggest
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Mas3r
- Člen | 116
Zdravím
Snažím se implementovat jQuery Suggest plugin. Skoro vše funguje OK, do Firebugu se vypíše GET s „našeptanými“ možnostmi, bohužel se neprovede úprava <ul> na konci <body> jako obvykle. Tipuju, že tam bude někde problém s Nette jQuery pluginem…
Problém způsobuje:
<script>
jQuery.ajaxSetup({
success: function (data) {
jQuery.netteCallback(data);
},
dataType: "json"
});
</script>
Dá se to nějak opravit?
- Honza Marek
- Člen | 1664
Jako nepochopil jsem, co je úprava <ul>
na konci
<body>
.
Ale budu předpokládat, že očekáváš, že se ti vrátí html a někam se připojí (asi na konec body). To zařídíš takto:
$.get(url, {parametr: "hodnota"}, function (html) {
$("body").append(html);
}, "html");
Tím čtvrtým parametrem přebiješ defaultní návratový typ, jehož nastavení vyžaduje ten Nette jQuery AJAX Plugin.
- Mas3r
- Člen | 116
Ok, díky. Máš pravdu. Takž pro ostatní – stačí změnit $.get fci a to tak, že tam přidáte to „html“
<script>
function suggest() {
var q = $.trim($input.val());
if (q.length >= options.minchars) {
cached = checkCache(q);
if (cached) {
displayItems(cached['items']);
} else {
$.get(options.source, {q: q}, function(txt) {
$results.hide();
var items = parseTxt(txt, q);
displayItems(items);
addToCache(q, items, txt.length);
}, "html");
}
} else {
$results.hide();
}
}
</script>