| 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: 13 let
|
|||
0