php: 
        $obj=$_GET['a'];//判断时用的条件值
$obj1=str_replace(" ","",$_GET['b']);//更改后的值
$obj2=$_GET['c'];//更改的字段名
        if($obj1){
$sql="update studentbase set $obj2='$obj1' where id='$obj'";
mysql_query($sql);
}
        js:
        var thisobj=$(this);
var idobj=nowtd.attr("id");//需要修改的字段名称
        var parentobj=thisobj.parent("td").parent("tr").children("td").children("#hid").val();//修改时需要判断的条件id
        var content=thisobj.val();//更改的内容传入数据库
nowtd.html(content);
if(content!=""){
$.ajax({
type:"GET",
url:"user1_baodao_xingming.php",
data:{a:parentobj,b:content,c:idobj},
success:function(data){}
});
用这个方法给自身这个页面传值 然后修改内容会出先中文乱码 这是为什么呢不能给自己传值吗还是修改什么配置,数据库都没问题,就是一用这个方法就出现中文乱码!

解决方案 »

  1.   

    data:{a:parentobj,b:encodeURI(content),c:idobj}, //这句加下encodeURI()这个编码下php那边用 urldecode() 函数反编码 
     $obj1=str_replace(" ","",urldecode($_GET['b']));//更改后的值
      

  2.   

    恩 那该怎么设置呢?我都是gb2312的
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
      

  3.   

    刷新后会乱码 会不会是缓存
    你这样设置一般没什么问题的,我一般都用utf-8  //文件编码另存为也是utf-8 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
      

  4.   

    以前也用过$.get方法出现的就是这个问题,现在用$.ajax还是这个问题,用
    location.href='user1_baodao_xingming.php?a='+parentobj+'&b='+content+'&c='+idobj;方法传值一点问题也没有,但是就是每次都跳转页面太不方便了。
      

  5.   

    是不是跟我把html和php代码放到一个页面有关系呢?我是不是该用模板分离一下,然后在用$.ajax就行了?
      

  6.   

    建议用utf-8编码。因为ajax只能传递utf-8编码的数据。否则后台需用iconv()转码。
    js传递时用encodeURIComponent对中文编码一下。
    后台用urldecode()解码
      

  7.   

    //nowtd.html(content);    //是你这里的问题success:function(data){
       nowtd.html(data);      //成功后返回信息

    });php:
        mysql_query($sql); 
        $returnResult = urldecode($_GET['b'];
        echo $resultResult;   
        exit;)试下以上的
       
      

  8.   

    我的页面要是改成utf-8就全是乱码了