| Autor | Zpráva | ||
|---|---|---|---|
| 34111 Profil |
#1 · Zasláno: 16. 3. 2016, 17:38:08
Netušíte, kde mám chybu? Už se s tím modruju dobré 3 hodiny... Jednoduše chci odeslat formulář přes AJAX...
<script type="text/javascript">
/** Odeslání formuláře přes XMLHttp požadavek
* @param function funkce zajišťující obsluhu při změně stavu požadavku, dostane parametr s XMLHttp objektem
* @param string URL požadavku
* @param object formulář k odeslání
* @param object předané hlavičky ve tvaru { 'hlavička': 'obsah' }
* @return boolean true v případě úspěchu, false jinak
* @copyright Jakub Vrána, http://php.vrana.cz/
*/
function post_xmlhttprequest(state_change, url, form, headers) {
var elements = form.elements;
var content = [];
for (var i=0; i < elements.length; i++) {
if (elements[i].attributes.name && elements[i].attributes.name.specified && !elements[i].disabled) {
if (/^(select)$/i.test(elements[i].tagName)) {
var options = elements[i].options;
for (var j=0; j < options.length; j++) {
if (options[j].selected) {
var value = (options[j].attributes.value && options[j].attributes.value.specified ? options[j].value : options[j].text);
content.push(encodeURIComponent(elements[i].name) + '=' + encodeURIComponent(value));
}
}
} else if (!/^(submit|reset|button|file|image)$/i.test(elements[i].type) && (!/^(radio|checkbox)$/i.test(elements[i].type) || elements[i].checked)) {
content.push(encodeURIComponent(elements[i].name) + '=' + encodeURIComponent(elements[i].value));
}
}
}
if (!headers) {
headers = {};
}
headers['Content-Type'] = 'application/x-www-form-urlencoded';
return send_xmlhttprequest(state_change, 'POST', url, content.join('&'), headers);
}
</script>
<script type="text/javascript">
function odeslat(form) {
document.getElementById('stavform').innerHTML = 'Odesílá se ...';
return post_xmlhttprequest(function (xmlhttp) {
if (xmlhttp.readyState == 4) {
document.getElementById('stavform').innerHTML = 'Odesláno.';
}
}
}, 'nahlasit_neaktualni.php', form);
}
</script>
<span id="stavform"></div>
<form action="" method="post" onsubmit="return !odeslat(this);" name="formneaktualniobsah"> |
||
| Chamurappi Profil |
#2 · Zasláno: 16. 3. 2016, 19:18:57
Reaguji na Martina Brodeckého:
V uvedeném kódu chybu nevidím. Nepočítám-li, že nevidím nikde funkci send_xmlhttprequest. Buď sis ji od Jakuba Vrány zapomněl zkopírovat (a problém je v tom), nebo je definovaná v části kódu, kterou jsi sem nedal, a v tom případě prosím o odkaz na živou ukázku.
|
||
| 34111 Profil |
#3 · Zasláno: 18. 3. 2016, 11:01:01
Aha :D díky moc..
|
||
|
Časová prodleva: 10 let
|
|||
0