Javascript(jQuery) - $ .post问题

时间:2010-12-03 13:39:38

标签: php javascript jquery ajax post

因此,由于某些原因,我的脚本拒绝工作,尽管它似乎是正确的。

我尝试使用$ .ajax,但是也没有使用它。有什么想法出了什么问题?

<script>
$(document).ready(function() {
     $('#saveForm .submit').click(function() {
      var _user = $('#saveForm .user');
       _userId = $('#saveForm .userId');
       _password = $('#saveForm .password');

      $('#saveForm').append('<p>Loading...</p>');

      $.post("ajax/fetchPhotos.php", {user:_user, userId:_userId, password:_password}, function(data) {
       alert(data);
      });

      return false;
     });
});
</script>

在ajax / fetchPhotos.php中我有这个:

<?php
set_time_limit(0);
session_start();
require_once("includes/functions.php");
require_once("includes/pclzip.lib.php");

/*
Huge block of code here (commented out for the moment)
*/
echo "wut?";

所以,当点击.submit时,它应该向fetchPhotos.php发送一个带有三个参数的请求然后提醒“wut?”。现在页面挂起了chrome ..没有任何反应。在Firefox中,页面只是刷新。我在控制台中遇到一个错误,但我只是在一瞬间看到它,因为页面会直接刷新。

谢谢, 皮特

2 个答案:

答案 0 :(得分:3)

必须使用.val()方法获取输入值。

尝试这种方式:

<script>
$(document).ready(function() {

    $('#saveForm .submit').bind('click', function() {
        var 
            user = $('#saveForm .user').val(),
            id = $('#saveForm .userId').val(),
            password = $('#saveForm .password').val();

        $('#saveForm').append('<p>Loading...</p>');

        $.post("ajax/fetchPhotos.php", {user:user, userId:id, password:password}, function(data) { 
            alert(data);
        });

        return false;
    });
});
</script>

答案 1 :(得分:0)

似乎与语法相关的问题也可以尝试使用绝对网址或者可以这样做

new Ajax.Request("ajax/fetchPhotos.php", {
            method: 'post',
            parameters: 'id='+id,
            onComplete: function(transport) {
            alert(transport.responseText);
            }
            });