在提交表单提交按钮之前使用ajax发布一些字段值

时间:2014-02-25 17:23:40

标签: javascript php jquery ajax forms

在从提交按钮提交字段之前,我可以使用ajax发布一些值吗?

我正在使用以下代码。它取得了成功,但我无法获得发布的数据。 有什么线索吗? 非常感谢您的帮助/评论。谢谢!

function auto_fill(){  

        var that = $(this),
            url = './auto_fill.php',
            type = that.attr('method'),
            data = {};

        that.find('[name]').each(function(index,value){
            var that =$(this),
                name =that.attr('name'),
                value = that.val();
                data[name] = value;
        }); 

        $.ajax({
            url: url,
            type: type,
            data: data,
            success: function(response) {
                        document.getElementById("f_name").value="<?php echo $name ?>";
                        document.getElementById("phn_no").value="<?php echo $phn_num ?>";

            }
        });

        return false;
    }

1 个答案:

答案 0 :(得分:3)

试试这个

function auto_fill(){
  $.getJSON("./auto_fill.php?id_num=" + $("#id_num").val(),
        function(data){
          $.each(data, function(i,item){
            if (item.field == "first_name") {
              $("#f_name").val(item.value);
            } else if (item.field == "phonenum") {
              $("#phn_no").val(item.value); 
            } 
          });
        });
}

auto_fill.php

$id = $_GET['id_num'];

//build the JSON array for return
$json = array(array('field' => 'first_name', 
                    'value' => 'Your name'),

              array('field' => 'phonenumber', 
                    'value' => $phn),
              array('field' => 'somethinglikeDiscription', 
                    'value' => 'You entered ID as '.$id));
echo json_encode($json );

您可以通过此JSON数组将任何变量传递给此值。