Java týden Body zdarma
Využij podzimních slev a získej od nás až 40 % bodů zdarma! Více zde
Pouze tento týden sleva až 80 % na Java e-learning!
Avatar
Jan Unger
Člen
Avatar
Jan Unger:8. října 20:06

Neviem donutit AJAX aby poslal premennu smerom na server. Mam pocitadlo, ktore funguje bez problemov, pocita kliknutia. Vsetko ok,, ale potrebujem po kazdom kliknuti poslat update s touto hodnotou na server, najlepsie tak aby nebola ziadna odpoved, nech zbytocne nezatazuje clientsku stanicu. posielanie moze byt niekolko krat za sekundu. Kludne by mi stacil udp paket a na serveri by som odchytil odpoved, ale nenasiel som dostatocne jednoduchy sposob. Preto to skusam s tym ajaxom.

Zkusil jsem: v develop mode v chrome nevidim absolutne ziadnu aktivitu na networku, ze by sa ajax pokusil aspon daco odoslat.. aj ked zlu hodnotu ale aspon daco .. mrtve.. skusal som aj window.location moznosti ,,ale to ma supne na inu stranku a ja potrebujem pokracovat v scripte ratania klikov.

Chci docílit: Potrebujem pocitadlo clickov tak, aby po kazdom kliknuti poslalo updanutu hodnotu smerom na server. Najlepsie tak aby co najmenej zatazoval klientovu stranu ,,cize najlepsie ziadna odpoved od servera ,ze je dorucene, alebo spracovane alebo cokolvek.

court1.js:

var button = document.getE­lementById("clic­kme"),
count = 0;
button.onclick = function() {
count += 1;
button.innerHTML = "result: " + count;
$.ajax({
type: 'POST',
url: 'count.php',
data:+count,
});
};

html :

<html>

<head>
<meta charset="UTF-8">
<title></title>
<style>
body {
margin: 0;
padding: 0;
font-family: "Lato", sans-serif;
font-size: 20pt;
font-weight: normal;
background: lightblue; /* For browsers that do not support gradients /
background: -webkit-linear-gradient(
-90deg,
lightblue,
black
); /
For Safari 5.1 to 6.0 /
background: -o-linear-gradient(
-90deg,
lightblue,
black
); /
For Opera 11.1 to 12.0 /
background: -moz-linear-gradient(
-90deg,
lightblue,
black
); /
For Firefox 3.6 to 15 /
background: linear-gradient(-90deg, lightblue, black); /
Standard syntax */
}

.main {
margin: 100px auto;
text-align: center;
}

button {
padding: 20px;
background: transparent;
text-shadow: 1px 1px 1px #202020;
font-family: "Lato", sans-serif;
font-size: 18pt;
border: 1px solid lightblue;
color: lightblue;
}
</style>
</head>

<body>
<div class="main">

<h3>court 1</h3>
<button id="clickme">click here</button>

</div>
<script src="court1.js"></scrip­t>
</body>

</html>

Dik za rady alebo nakopnutia, kde je chyba... myslel som ,ze to bude jednoducha funkcia :/..

Editováno 8. října 20:07
 
Odpovědět 8. října 20:06
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:9. října 8:07

google = ajax example jquery
google = ajax example httprequest
Kod, ktery uvadis, nemuze fungovat, protoze mu spousta kodu schazi. Konkretne treba nevidim, ze bys pripojil jquery pres tagy script.
Firefox - Nastroje - vyvojaske nastroje - konzola, F5 stranka, a musi ti vypsat spoustu erroru. A po kliknuti dalsi.

Snad i zacatecnik by mohl umet zkopirovat exampl z oficialni dokumentace... No, nejspis zacatecniky podcenili :)
https://api.jquery.com/jQuery.post/

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery.post demo</title>
  <script src="https://code.jquery.com/jquery-3.4.1.js"></script> <!-- pripojeni js jknihovny jquery s funkci $.post() -->
</head>
<body>

<form action="/" id="searchForm">
  <input type="text" name="s" placeholder="Search...">
  <input type="submit" value="Search">
</form>
<!-- the result of the search will be rendered inside this div -->
<div id="result"></div>

<script>
// Attach a submit handler to the form
$( "#searchForm" ).submit(function( event ) {

  // Stop form from submitting normally
  event.preventDefault();

  // Get some values from elements on the page:
  var $form = $( this ),
    term = $form.find( "input[name='s']" ).val(),
    url = $form.attr( "action" );

  // Send the data using post
  var posting = $.post( url, { s: term } );

  // Put the results in a div
  posting.done(function( data ) {
    var content = $( data ).find( "#content" );
    $( "#result" ).empty().append( content );
  });
});
</script>

</body>
</html>
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět  +1 9. října 8:07
Avatar
Jan Unger
Člen
Avatar
Jan Unger:9. října 12:20

Super ... dik .,.,.pomohlo.. nacital som jquery a uz to posiela.. sice mi neposiela data, ani ziadnu hodnotu,,ale aspon to uz spravi post smerom na server.

samozrejme ze som googlil a mrte,, a v 90% pripadov je priklad ajaxu
$.ajax({
type: 'POST',
url: 'index.html',
});

tot vse.. a z toho som aj vychadzal...

aj toto forum som nasiel vlastne tak ,ze som hladal ajax vysvetlenie v nativnom jazyku,,,ked vsetky example a vysvetlenia v anglictine mi nepomohli ..
ako prve som si presiel Vas uvod do AJAXu ,kde sa v celom clanku NESPOMINA nejake nacitanie scriptu jquery.. takze len tak k tym zaciatocnikom..

 
Nahoru Odpovědět 9. října 12:20
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Jan Unger
Člen
Avatar
Odpovídá na Jan Unger
Jan Unger:9. října 12:28

developerske nastroje som samozrejme pozeral. chyby vypisovalo dve: nemoze nacitat favicon.ico ..... a court1.js:6 Uncaught ReferenceError: $ is not defined
at HTMLButtonEle­ment.button.on­click ,,chybu ktoru som tiez googlil ,,ale kedze sa jedna o fukciu buttonu,ktory napriek tomu ,ze tam chyba kopec kodu, tak funguje skvelo,, tak som to neriesil.. takze nie ,, nemas pravdu v tomto. Mozno by bolo vhodnejsie, keby si z toho ega trochu ukrojil a nebudes posobit ako ,,, dopln si sam.. kazdopadne dakujem este raz..

 
Nahoru Odpovědět 9. října 12:28
Avatar
Jan Unger
Člen
Avatar
Jan Unger:9. října 14:47

uz len oprava ajax casti, aby posielalo na server aj spravnu hodnotu:

$.ajax({
type: 'POST',
url: 'count.php?count=' + count,
});

 
Nahoru Odpovědět 9. října 14:47
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.