【问题标题】:jQuery post optionsjQuery 发布选项
【发布时间】:2010-01-11 20:43:47
【问题描述】:

我就是想不通。我需要向 PHP 后端发送一个 POST 请求。应该是这样的:

Array ( [username] => 'username' [password] => 'password' [action] => 'login' ) 

我有一个表单作为前端,我使用 .serialize() 来获取用户和密码。但是如何添加操作键/值?

现在我只是手动添加字符串,如“&action=login”,但我不喜欢这个解决方案。另一个问题是我不能使用任何 jQuery 插件,只能使用 jQuery 本身。

【问题讨论】:

  • 你能把找回用户名和密码的代码贴出来吗? (html & javascript)

标签: php jquery post


【解决方案1】:
var usr = $("[name='username']").val();
var pwd = $("[name='password']").val();
var act = $("[name='action']").val();

$.post("script.php", {username:usr, password:pwd, action:act}, function(rst){
  alert(rst); // alerts 'Thank you [username], your data has been received.'
}, "html");

script.php 的代码应该类似于:

if ($_POST) {
  echo "Thank you " . $_POST["username"] .", your data has been received.";
} else {
  echo "Nothing found.";
}

【讨论】:

    【解决方案2】:
    $login = //your code;
    $yourarray =//your code here 
    if (array_key_exists($login, $yourarray))
    // your code here
    

    【讨论】:

      【解决方案3】:

      您想从 jQuery 发布数据吗?试试:

      $.post("your/controller/url.php", {username:'myname', password:'mypassword',action:'login'}, function(data){
         //do something when answer from your php backend arrives
      },'json');
      

      在你的php后端你可以像往常一样访问它$_POST,回复应该是JSON(不是强制性的,但我会推荐它)

      【讨论】:

        【解决方案4】:

        我在基于 AJAX 的应用程序中遇到了同样的问题。没有优雅的方法可以做到这一点。我是这样用的:

        <form id="foo">
             <input type="hidden" id="action" name="action" value="login" />
             <input type="text" id="username" ....
        ...
        </form>
        

        通过这种方式,您不必手动添加字符串。

        【讨论】:

          【解决方案5】:

          您是否要向您发送的数据对象添加更多数据?你可以试试这样:

          var data = form.serializeArray();
          data.push({'action':'login'});
          
          $.post("/url", data, function(){ callback goes here}, 'json');
          

          【讨论】:

            猜你喜欢
            • 2011-12-09
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-08-13
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-09-18
            相关资源
            最近更新 更多