Jquery form post, +adatok ellenőrzése
2009-08-10T16:22:02+02:00
2009-08-10T17:47:28+02:00
2022-07-19T10:46:23+02:00
Alucard
Sziasztok!

Van egy egyszerű jquery script-em ami egy form adatait post-olja el egy másik php nek. Egy tutorial oldalon találtam, és ugyan egyszerű csak sajnos túl egyszerű.
No a script:

test.php:

<script> $(document).ready(function(){ $("form#submit").submit(function() { // we want to store the values from the form input box, then send via ajax below var fname = $('#fname').attr('value'); var lname = $('#lname').attr('value'); $.ajax({ type: "POST", url: "ajax.php", data: "fname="+ fname +"& lname="+ lname, success: function(){ $('form#submit').hide(); $('div.success').fadeIn(); } }); return false; }); }); </script> <?php echo " <div class=\"container\"> <form id=\"submit\" method=\"post\"> <fieldset> <legend>Enter Information</legend> <label for=\"fname\">Client First Name:</label> <input id=\"fname\" class=\"text\" name=\"fname\" size=\"20\" type=\"text\" /> <label for=\"lname\">Client Last Name:</label> <input id=\"lname\" class=\"text\" name=\"lname\" size=\"20\" type=\"text\" /> <button class=\"button positive\"> <img src=\"../images/icons/tick.png\" alt=\"\" /> Add Client </button> </fieldset> </form> <div class=\"success\" style=\"display:none;\">Client has been added.</div> </div> "; ?>

ajax.php:

<?php $fname = htmlspecialchars(trim($_POST['fname'])); $lname = htmlspecialchars(trim($_POST['lname'])); if ($fname == "") { echo "hiba"; } ?>

Azt szeretném megoldani, hogy miután az ajax.php leellenőrizte az adatokat ne mindig azt írja ki hogy "client has been added".
Természetesen megpróbáltam már mindenhogy, azt is, hogy a succes div-be include-olom az ajax.php-t stb...
Nézegettem a jquery dokumentációt, de ott sincs semmi, google sem, itt sem...
Van ugyan egy másik ajax-os form post script-em, de az néha bug-os, ezért szeretném lecserélni erre.
Mutasd a teljes hozzászólást!

$.ajax({ type: "POST", url: "ajax.php", data: "fname="+ fname +"& lname="+ lname, success: function(data){ $('form#submit').hide(); $('div.success').html(data); $('div.success').fadeIn(); } }) az ajax.php simán a kívánt szöveget adja vissza, pl. echo 'minden ok';
Mutasd a teljes hozzászólást!


  • $.ajax({ type: "POST", url: "ajax.php", data: "fname="+ fname +"& lname="+ lname, success: function(){ $('form#submit').hide(); $('div.success').fadeIn(); } }); return false; }); });

    Itt kell lekezelned az ajax.php által visszaadott kimenetelt, mondjuk eltenni azt egy változóba, majd a $('div.success') innerHTML tulajdonságát felülírhatod a visszadott szöveggel.
    Mutasd a teljes hozzászólást!

  • $.ajax({ type: "POST", url: "ajax.php", data: "fname="+ fname +"& lname="+ lname, success: function(data){ $('form#submit').hide(); $('div.success').html(data); $('div.success').fadeIn(); } }) az ajax.php simán a kívánt szöveget adja vissza, pl. echo 'minden ok';
    Mutasd a teljes hozzászólást!
  • Áh, most már értem, egyszerű a megoldás én meg túl akartam bonyolítani :) Köszi!
    Mélyen bele kell ássam magam ebbe az ajax-os, jquery-s dologba azt hiszem :P
    Mutasd a teljes hozzászólást!
abcd