<script type="text/javascript">
    function cheshi(id) {
        $.ajax({
            type: "POST",
            url: "/tools/admin_ajax.ashx?action=cheshi",
            data: { id:id },
            dataType: "json",
            beforeSend: function (XMLHttpRequest) {
                //发送前动作
            },
            success: function (data, textStatus) {
                $("#div1").text(data.word_ename);
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                $("#div1").text("错误");
            } 
            
        });
    }
</script>
<div id="div1">123</div>
  <img alt="" src="../../images/msg.png"  onclick="cheshi(2)"/>
 case "cheshi": //
                    cheshi(context);
                    break;
 private void cheshi(HttpContext context)
        {
            int id = DTRequest.GetFormInt("id");
            
            BLL.word bl=new BLL.word();
            Model.Word wo=new Model.Word();
            wo = bl.GetGoodsModel(id);
            context.Response.Write("{\"word_ename\":" + wo.word_ename + ", \"word_cname\":" + wo.word_cname + "}");
            return;
        }
    通过点击页面上的img标签,把id提交到.ashx里查询到一条记录,把查询的记录返回到html页面并覆盖到div里。现在我点img标签标签一点反应也没有。求大家帮我改改,初学jQuery很多问题都不明白asp.netC#jQueryajax

解决方案 »

  1.   

     int id = DTRequest.GetFormInt("id",0);
      

  2.   

    现在可以提交了 之前提交不到是因为我url写错了,但是现在提交了后台也获取到了wo.word_ename的值,怎么前台会执行 $("#div1").text("错误");这一行呢?
      

  3.   

    DNTRequest
    DZ 论坛的?,要有两个参数
    int id = DNTRequest.GetFormInt("id",0);
      

  4.   

    感谢你的回答 不是用的dz论坛 不过我根据你说的改了后还是一样,后台能取到wo.word_ename的值但是页面还是只执行错误的这一句error: function (XMLHttpRequest, textStatus, errorThrown) {
                    $("#div1").text("错误");
                } 
      

  5.   

    报parsererror  invalid json错误检查了一下context.Response.Write("{\"msg\":1, \"word_ename\":" + wo.word_ename + ", \"word_cname\":" + wo.word_cname + ", \"msgbox\":\"成功了!\"}");
    没看出有什么问题
      

  6.   

    ashx里面context.Response.Write之后就不需要return了ashx里面调试一下看数据输出是否正确
      

  7.   

    context.Response.Write("{\"msg\":1, \"word_ename\":\" 你好\", \"msgbox\":\"成功了!\"}");
    换成这样就没问题能显示你好 加断点调试wo.word_ename是有值的 是不是我语法哪里有问题
      

  8.   

         try{
       int id = DTRequest.GetFormInt("id");
                 
                BLL.word bl=new BLL.word();
                Model.Word wo=new Model.Word();
                wo = bl.GetGoodsModel(id);
                context.Response.Write("{\"word_ename\":" + wo.word_ename + ", \"word_cname\":" + wo.word_cname + "}");
                
         }
         cache{
         context.Response.Write("{\"word_ename\": , \"word_cname\":}");     
    }
    context.Response.End();
      

  9.   


    Try thiscontext.Response.Write("{\"msg\":1, \"word_ename\":\"" + wo.word_ename + "\", \"word_cname\":" + wo.word_cname + ", \"msgbox\":\"成功了!\"}");
      

  10.   

    context.Response.Write("{\"msg\":1, \"word_ename\":\"" + wo.word_ename + "\", \"word_cname\":\"" + wo.word_cname + "\", \"msgbox\":\"成功了!\"}");