0

现在有一段时间我正在努力使用这个功能。这是一个例子:

HTML 示例代码:

    <form method="POST">            
        <label>Input 1:</label><br/>
        <input type="text" name="Input1" id="Input1"/><br/>
        <input type="submit" name="Login" value="Login" id="Login"/>
    </form>

PHP 示例代码(script.php):

    if(isset($_POST['Input1Php']))
    {   
        $Input1 = $_POST['Input1Php'];

        if($Input1 == "Random Condition")
        {
            echo "All good";
        }else
        {
            echo "Hell no!";
        }
    }

jQuery 示例代码(我也尝试使用 .submit(),没有改变任何东西):

$('#Login').click(function()
{
    var Input1JS = $('#Input1 ').val();

    if("Something"=="Random Condition")
    {   
        $.post('script.php',{Input1Php:Input1JS},function(data)
        {
            if(data=="All good")
            {
                   Show me that
            }else
            {
                   Show me this
            }
        });
    }else
    {
        Just don't do anything
    }
}); 

该脚本适用于 .keyup 等查找,但是当我将其更改为单击或提交时,它只是不做任何事情。我不明白为什么。我错过了什么吗?$.post 是否不适用于这些事件?

PS:请不要将 $.post 更改为其他内容。我的意思是了解此功能如何或是否适用于这些事件。

4

2 回答 2

1

由于您的问题缺少一些信息,因此您的页面可能正在发回,因此它不会等待$.post返回。尝试改变

<input type="submit" name="Login" value="Login" id="Login"/>

<input type="button" name="Login" value="Login" id="Login"/>

看看会发生什么。

于 2012-08-21T09:34:02.673 回答
0

浏览器通常对按钮有一些默认操作。在这种情况下,帖子数据将通过传统方式提交。如果您想防止这种行为,只需在回调return false;末尾添加一个。click

于 2012-08-21T10:17:15.477 回答