大家好,我遇到了个奇怪的问题,如图所示,当我使用JQuery ajax更新过图片的信息后,用于显示图片信息的文本框不知道为什么改变不了了,虽然文本框的Value一直在变化,但是在页面上显示的还是原样没有变化,很奇怪。
我的页面左侧有一些<li>元素,下面是替换图片,添加图片信息到文本框的代码.     //点击li,替换背景,同时获取图片的信息,添加到信息栏;
     $(".smallPicUl li").click(function () {
            $(".smallPicUl li").removeClass("liSelected");
            $(this).addClass('liSelected');
            var thisid = $(this).attr("id");
            $.get("../Tools/viewserver.ashx", { id: thisid, action: "getProjectPictureInfo" },
            function (data) {
                 $("#pictureInfo").attr("value", data);
                 $("#pictureInfo").attr("data-id", thisid); //给bigImg控件添加一个id;
            });
     });
这个是更改图片信息的代码;        function updateImgInfo() {
            var thisid = $("#pictureInfo").attr("data-id");
            if (thisid != "") 
            {
                $.post("../Tools/viewserver.ashx", { id: thisid, text: $("#pictureInfo").val(), action: "updateProjectPictureInfo" });
            }
        };
文本框和更新按钮的代码<div class="PicInfo">
     <input runat="server" id="pictureInfo" class="PicInfoInput" type="text" />
     <input id="ButtonEdit" type="button" value="修改" onclick="updateImgInfo()" />
</div>
求各位高手帮忙解答下,我不明白问题出在哪,是不是我AJAX写错了。Ajax

解决方案 »

  1.   

    updateImgInfo()中添加下面的句子
     $("#pictureInfo").attr("value", data);
      

  2.   

    更新完之后还要给input赋值吗,我的做法是在用户点击<li>的时候,刷新input的值。但是如果提交了一次修改,点<li>就没有反应了。
      

  3.   

      
    谢谢,请问怎么查看我的页面缓存?
    更新后我点击<li>时,我在查看源代码的地方看到input的value已经改变了,但是实际显示的效果还是刚刚更新的那个信息。
      

  4.   

    $("#pictureInfo").attr("value", "");
    之后再
    $("#pictureInfo").attr("value", data);
    也许可以。新手。。
      

  5.   

    更新完之后还要给input赋值吗,我的做法是在用户点击<li>的时候,刷新input的值。但是如果提交了一次修改,点<li>就没有反应了。你自己都说了 用户点击<li>的时候,刷新input的值  你updateImgInfo()方法没有给它赋值  当然没有反应了
      

  6.   

    更新完之后还要给input赋值吗,我的做法是在用户点击<li>的时候,刷新input的值。但是如果提交了一次修改,点<li>就没有反应了。你自己都说了 用户点击<li>的时候,刷新input的值  你updateImgInfo()方法没有给它赋值  当然没有反应了哦哦,是我没有讲明白,我的updateImgInfo的作用是把input的用户输入内容提交给服务器,更新当前选择图片的图片信息,而点击<li>的时候会从服务器请求图片的信息并且填充在input中,我发现我请求回来的数据是有的,而且已经在input的value中显示出来了,但是在页面显示上仍然显示的是刚刚用户提交更新的那个数据,就是我截的图的那种情况。
      

  7.   

    更新完之后还要给input赋值吗,我的做法是在用户点击<li>的时候,刷新input的值。但是如果提交了一次修改,点<li>就没有反应了。你自己都说了 用户点击<li>的时候,刷新input的值  你updateImgInfo()方法没有给它赋值  当然没有反应了哦哦,是我没有讲明白,我的updateImgInfo的作用是把input的用户输入内容提交给服务器,更新当前选择图片的图片信息,而点击<li>的时候会从服务器请求图片的信息并且填充在input中,我发现我请求回来的数据是有的,而且已经在input的value中显示出来了,但是在页面显示上仍然显示的是刚刚用户提交更新的那个数据,就是我截的图的那种情况。那这样吧  你试试 添加value值之前 先把value置空  看看效果