AJAX和/或JQUERY形成POST?

时间:2009-09-06 15:25:40

标签: php ajax forms

Hi Webters of Web Programming, 在这里,我带来了另一个愚蠢的问题,希望有人能回答我。我不是很擅长AJAX编程,但由于某些情况,我必须建立一个完全不可刷新的网站。 接下来的问题是如何使这个表单发送请求并返回结果,而不重新加载当前页面?

    <?PHP

function mobio_checkcode($servID, $code, $debug=0) {

    $res_lines = file("http://www.mobio.bg/code/checkcode.php?servID=$servID&code=$code");

    $ret = 0;
    if($res_lines) {

        if(strstr("PAYBG=OK", $res_lines[0])) {
            $ret = 1;
        }else{
            if($debug)
                echo $line."\n";
        }
    }else{
        if($debug)
            echo "Unable to connect to mobio.bg server.\n";
        $ret = 0;
    }

    return $ret;
}


$servID = 29;
$code = $_REQUEST["code"];
$ok = $_REQUEST["ok"];

if($ok) {
    if(mobio_checkcode($servID, $code, 0) == 1) {
        echo "The SMS code is correct!";
    }else{
        echo "Wrong SMS code.";
    }
}else{
?>



<form method="post" name="smscode">
SMS code: <input type="text" size="20" name="code"/>
<input type="submit" name="ok" value=" Submit "/>
</form>
<?PHP } ?>

此表单发送验证短信代码的请求。这是该服务的提供者给我的。但它是简单的PHP文件。我将它包含在我的不可刷新网站中,但当我按下SUBMIT按钮时,它会刷新整个当前页面,然后显示预定义的回声。

4 个答案:

答案 0 :(得分:1)

而不是提交使用简单按钮并将ajax事件绑定到它。这是一个粗略的例子。

    $(document).ready(function(){
       $("#btnId").click(function(){
         $.ajax({
           type: "GET",
            url: "test.js",
           dataType: "script"
         });

       });
     }); 

答案 1 :(得分:0)

当我开始做一些ajaxing时,这对我帮助很大:

http://net.tutsplus.com/tutorials/javascript-ajax/5-ways-to-make-ajax-calls-with-jquery/

答案 2 :(得分:0)

听起来你需要jquery form plugin

它会让你了解你所描述的行为。

$(document).ready(function() { 
    var options = { 
        // other options left out
        success:       showResponse  // post-submit callback 
    }; 
    $('#myForm1').ajaxForm(options); 
}); 


// post-submit callback 
function showResponse(responseText, statusText)  { 
    alert('response: ' + responseText); 
} 

答案 3 :(得分:0)

在我的情况下,所有解决方案都不起作用。要么他们没有POST到服务器,要么我不能让他们显示服务器的回复,你可能会看到它在同一个文件中

if($ok) {
    if(mobio_checkcode($servID, $code, 0) == 1) {
        echo "The SMS code is correct!";
    }else{
        echo "Wrong SMS code.";
    }

所以在这种情况下,任何人都可以告诉我如何重新加载包含此文件的div,在SUBMIT按钮上单击? 或欢迎任何其他解决方案...