Autor | Zpráva | ||
---|---|---|---|
Fisak Profil |
#1 · Zasláno: 14. 4. 2013, 13:22:01
Dobrý den. Rád bych odeslal formulář bez nutnosti refreshe... mám ajax
<script> Casovac(); function NewHodnota() { hodnota = document.getElementById('hodnota'); if (window.XMLHttpRequest) xmlhttp = new XMLHttpRequest(); else xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { hodnota.innerHTML = xmlhttp.responseText; } } xmlhttp.open("GET", "./../../?page=chat_list", true); xmlhttp.send(); Casovac(); } function Casovac() { setTimeout("NewHodnota()", 1000); } </script> <span id='hodnota'></span> Ten mi refreshuje stránku každou vtěřinu.. a rád bych ajaxem nebo jinak pomocí JS udělal to aby se mi data z formuláře odeslali a nemusel bych refreshovat celou stránku.. lze to? A jak ? |
||
Str4wberry Profil |
#2 · Zasláno: 14. 4. 2013, 21:01:08
Nevím, jestli tomu dobře rozumím, ale data si lze například poslat tak, že se přidají jako parametry do URL.
xmlhttp.open("GET", "./../../?page=chat_list&data=" + nejakaPromennaSDaty , true); Efektu nenačtení celé stránky lze dosáhnout i odesláním formuláře do skrytého <iframe> .
|
||
Fisak Profil |
#3 · Zasláno: 15. 4. 2013, 01:13:16
Str4wberry:
Chtěl jsem právě předejít té možnosti s iframe.. |
||
Str4wberry Profil |
#4 · Zasláno: 15. 4. 2013, 08:02:21
No, tak potom stačí poslat data v URL, jak píšu.
|
||
Fisak Profil |
#5 · Zasláno: 15. 4. 2013, 11:19:19
Str4wberry:
No problém je v tom že bych chtěl odesílat text který má diakritiku a je dlouhý i přes 400 znaků což nevym jak by u tohoto... |
||
pako Profil * |
#6 · Zasláno: 15. 4. 2013, 11:32:32
nedal by sa poslat JSON 'objekt' ako argument
send ?
|
||
Fisak Profil |
Našel jsem fungující ajaxový script.. bohužel mam problém. Po odeslání formuláře se mi v textovém formuláři nechává text..
index.php <!--http://www.9lessons.info/2009/04/submit-form-jquery-and-ajax.html--> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script> <script type="text/javascript" > $(function() { $(".subChat").click(function() { var textChat = $("#textChat").val(); var dataString = 'text_chat='+ textChat; $.ajax({ type: "POST", url: "script.php", data: dataString }); return false; }); }); </script> <form method="post"> <input id="textChat" name="text_chat" type="text" value=""/> <input type="submit" name="submitname" value="Odeslat" class="subChat"/> </form> <?php if(isset($_POST['text_chat'])) { $heslo = "vertrigo"; $server = "localhost"; $login = "root"; $database = "system"; MySQL_Connect($server, $login, $heslo); MySQL_Select_DB($database); $name=$_POST['text_chat']; mysql_query("INSERT INTO zkouska (id, text) VALUES ('', '".$name."')"); } |
||
peta Profil |
pod radek 8 napises?
$("#textChat").val(''); |
||
_es Profil |
Fisak:
„Po odeslání formuláře se mi v textovim formuláři nechává text“ Pretože si vlastne nijaký formulár neodoslal. Dávať atribútom name a id hodnotu "name" asi nie je dobrý nápad.
|
||
Fisak Profil |
#10 · Zasláno: 15. 4. 2013, 12:36:55
peta:
díky moc :-) |
||
Chamurappi Profil |
#11 · Zasláno: 15. 4. 2013, 13:30:15
Reaguji na Fisaka:
„Našel jsem fungující ajaxový script“ Ten před tím také fungoval a stačilo ho jednoduše upravit, nemusel jsi kvůli tomu tahat zastaralou knihovnu. Co se stane, když někdo do chatu napíše ampersand? |
||
Fisak Profil |
#12 · Zasláno: 15. 4. 2013, 13:40:35
Chamurappi:
Nestane se nic? Nebo tedy alespoň nevidím že by se něco událo.. |
||
Časová prodleva: 11 let
|
0