首先,我想要实这样一个功能,

当选择一个下拉框时,让其它三个文本框得到从服务器上返回的值!也就把返回的值,赋给那三个文本框!

我用的是jquery+php!! 由于我前台,后台,js,数据库采用的都是gb2312编码,所以,走了些弯路!

js代码:

$("#logname").change(function(){
        
        if($("#logname").val() != ""){
            $.ajax({
                url: "ajax.php?ac=kl_tjyj",
                type:'POST',
                complete :function(){}, //請求完回調的函數,無論成功與失敗都會調用,在success後
                dataType: 'json', //會把回傳的字符串自動轉換為json對象!
                data: {logname: $("#logname").val()},
                
                error: function() { alert('Ajax request 發生錯誤');},
                
                success: function(response) {
                    
                $("#yname").attr("value",response.yname);
                $('#zubie').val(response.zubie);
                $('#zhiwu').val(response.zhiwu);
                alert('添加成功!');
    
                }
           });
            
        }
    });

php代码如下:

if (get("ac") == 'kl_tjyj') {

if(isset($_POST['logname'])) {
        $queryString = post('logname');
        $queryString = iconv( 'UTF-8', 'gb2312' , $queryString);//解决传递过来的参数为中文乱码

if(strlen($queryString) >0) {

$sql = "select jj_truename,zhiwu,zubie from jj_ren where jjrenname='$queryString' limit 0,1";
            $result = $h->sql($sql);
            if(mysql_num_rows($result)) {
                while($row = mysql_fetch_array($result)){
                    $arr = array ('yname'=>iconv( 'gb2312', 'UTF-8' , $row['jj_truename']),'zubie'=>iconv('gb2312','UTF-8',$row['zubie']),'zhiwu'=>iconv('gb2312','UTF-8',$row['zhiwu']));
                }
                echo json_encode($arr);
            } else {
                echo '<script>alert("没有找到该人的");</script>';
            }
        } else {
            echo '<script>alert("提交的数据不能为空!");</script>';
        } 
    } else {
        echo '';
    }

}

附言:

JSON为何物?我就不重复概念了。通俗的说,它是一种数据的存储格式,就像PHP序列化后的字符串一样。它是一种数据描述。比如我们将一个数组 序列化后存放,就可以很容易的反序列化后应用。JSON也是如此,只不过他搭建的是客户端Javascript和服务端PHP的交互桥梁。我们用PHP生 成JSON后的字符串,然后把这个字符串传给前台Javascript,Javascirpt就可以很容易的将其反JSON然后应用。说通俗点,它真的很 像数组。
言归正传,如何使用JSON。PHP5.2开始内置了JSON的支持。当然,如果低于这个版本的话,那么市面上有很多PHP版本的实现,随便下一个用就OK啦。现在主要是说说PHP内置支持的JSON。很简单,两个函数:json_encodejson_decode(跟序列化很像啦)。一个编码,一个解码。先看看编码的使用:

<?php
$arr = array(
'name' => '陈毅鑫',
'nick' => '深空',
'contact' => array(
'email' => 'shenkong at qq dot com',
'website' => 'http://www.chenyixin.com',
)
);
$json_string = json_encode($arr);
echo $json_string;
?>

  很简单的将一个数组JSON了。需要指出的是,在非UTF-8编码下,中文字符将不可被encode,结果会出来空值,所以,如果你使用gb2312编写PHP代码,那么就需要将包含中文的内容使用iconv或者mb转为UTF-8再进行json_encode,

 
 
 
 
 

PHP ajax实现数组返回的更多相关文章

  1. jquery ajax传递数组给php

    写成:var data = {'item[]':item}; $.post(url,data,function(return_data) 写成item:item会导致数据缺失. 更多:http://w ...

  2. 在Ajax中将数组转换成字符串(0517-am)

    一.如何在Ajax中将数组转换成字符串 1. 主页面; <head> <meta http-equiv="Content-Type" content=" ...

  3. 关于ajax为什么会返回php整个源码

    ajax 程序:返回的是php文件输出的代码. 1. 注意:如果你的php文件包含了html代码或者说是输出了HTML代码,它都会返回给 AJAX. 2. 注意:是整个php文件.这意味着如果你的aj ...

  4. mvc ajax提交数组参数(转)

    http://blog.csdn.net/lonestar555/article/details/10192595/ 在action中的参数以数组方式接收数据 一.表单方式 1.提交Form < ...

  5. 将文件内容转化为byte数组返回

    如何将文件内容转化为byte数组并返回呢?对于这个问题,我献上我第一次成功的代码~ package com.succez.task1; import java.io.ByteArrayOutputSt ...

  6. ajax接收php返回得到一堆html代码

    ajax接收php返回得到一堆html代码 一.      错误代码: <font size='1'><table class='xdebug-error xe-notice' di ...

  7. ajax 提交数组 泛型集合

    ajax 提交数组 泛型集合 发表于2015/12/31 14:26:29  5117人阅读 分类: mvc asp.net webapi ORM 转载:http://blog.csdn.net/li ...

  8. 给定一个只包含正整数的非空数组,返回该数组中重复次数最多的前N个数字 ,返回的结果按重复次数从多到少降序排列(N不存在取值非法的情况)

    """ #给定一个只包含正整数的非空数组,返回该数组中重复次数最多的前N个数字 #返回的结果按重复次数从多到少降序排列(N不存在取值非法的情况) 解题思路: 1.设定一个 ...

  9. 【.net ajax显示后台返回值】

    1..net ajax显示后台返回值 <script>        $(document).ready(function () {            $("#btn&quo ...

随机推荐

  1. POJ_2392_Space_Elevator_(动态规划,背包)

    描述 http://poj.org/problem?id=2392 磊方块,每种方块有数量,高度,以及该种方块所能处在的最高高度.问最高磊多高? Space Elevator Time Limit: ...

  2. HDU 5961 传递 【图论+拓扑】 (2016年中国大学生程序设计竞赛(合肥))

    传递 Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)     Problem ...

  3. JSP九大内置对象详解

    内置对象特点: 1.            由JSP规范提供,不用编写者实例化. 2.            通过Web容器实现和管理 3.            所有JSP页面均可使用 4.     ...

  4. poj 1696 Space Ant(模拟+叉积)

    Space Ant Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3840   Accepted: 2397 Descrip ...

  5. Shell while循环

    while循环用于不断执行一系列命令,也用于从输入文件中读取数据:命令通常为测试条件.其格式为: while command do Statement(s) to be executed if com ...

  6. 8-6-Exercise

    HDU 1003    Max Sum 题意:给出一串数字,求出其中某段连续的数字之和最大的值,同时要输出起点的位置和终点的位置~~~ 方法一: 用sum记录某一段和的值,maxx为目前为止最大的su ...

  7. 一次服务器CPU占用率高的定位分析

    现象: 当前项目启动一段时间,有一个服务导致CPU使用率持续超过30% 环境:Windows 7,  CPU: 8核, 内存: 8g内存 定位过程: 启动项目,查看Java进程ID 查看Event P ...

  8. web dynpro message(备忘用)

    DATA lo_api_controller TYPE REF TO if_wd_controller. DATA lo_message_manager TYPE REF TO if_wd_messa ...

  9. javascript朝花夕拾

    (一)javascript中的数组index属性——获取数组的索引值 例如:要做到这样的效果 点击每个选项时,会显示不同的div. 我们的做法:在javascript中,先把所有的div的displa ...

  10. Servlet文件上传(ServletFIleUpload,DiskFileItemFactory,FileItem)

    1:我们学的是表单文件上传,就是在一个FORM中提交相应的信息,和之前我们的提交的注册信息之类的表单是不同的,所以要先改变一下FORM的属性,enctype="multipart/form- ...