【问题标题】:JQuery - Ajax Working a TimeJQuery - Ajax 工作时间
【发布时间】:2011-08-11 14:21:43
【问题描述】:

我第一次打开页面时,一切都在运行。我按下编辑按钮来编辑主题,并显示 div。我正在使用 CKeditor,我第一次可以编辑我的帖子。然后当我再次按下编辑按钮时,不显示 ckeditor 的 div 和 textarea。仅显示状态 div。它写“成功”了。

对不起我的英语。我会用截图... 这是第一次点击编辑按钮... 第一张图片链接:http://img691.imageshack.us/img691/9671/adszyvs.png

当我点击提交按钮时...

在后台写入“正在加载”然后“成功”..

当我再次点击编辑按钮时......只写“成功”......

第二张图片链接:http://img812.imageshack.us/img812/7854/adsz2ke.png

我的代码...

提交点击事件

$('#duzenlekutusu input[type="submit"]').live("click",function(){
var id = $("#numara").val();
ders_kayit(id);
return false;
    })

Ajax 代码:

function ders_kayit(id){
        $("#duzenlekutusu").ajaxStart(function(){
        $("#duzenlekutusu").html('Yükleniyor...');});
        var icerik = encodeURIComponent(CKEDITOR.instances.editor1.getData());
        $.ajax({
            type: "POST",
            url: "ders_duzenle.php",
            data: "icerik=" + icerik + "&vid=" + id ,
            scriptCharset: "utf-8" , contentType: "application/x-www-form-urlencoded;charset=utf-8",
            success: function(ajaxCevap){
                $('#duzenlekutusu').html(ajaxCevap);
                $("#duzenlekutusu").fadeOut("slow");
                $("#kapla").fadeOut("slow");
                        // Güncellemeden sonra son verileri çek
                        $("#bilgiler").html('Yükleniyor...');
                        ders_yukle(id);
                        return false;
                }   
            })
        return false;
    }       

ders_duzenle.php 代码:

<body>
<?php
$vid = @$_GET["id"];
$sorgu = mysql_fetch_array(mysql_query("SELECT * FROM vilayetcografyasi WHERE ID = '$vid'"));
?>


<div class="adminmenu"><a href="#" class="apply"><img src="../resimler/onayla.png" alt="" /></a><a href="#" class="editly"><img src="../resimler/duzenle.png" alt="" class="editly" /></a><a href="#" class="deletely"><img src="../resimler/sil.png" alt="" class="deletely" /></a></div>
<input type="hidden" id="numara" name="numara" value="<?php echo $sorgu["ID"];?>" />
<div class="baslik"><?php echo $sorgu["VilayetBaslik"];?></div>
<div class="icerik"><?php echo $sorgu["VilayetIcerik"];}?></div>
<script type="text/javascript">
CKEDITOR.replace("editor1");
$("a.bunudakapat").click(function(){
    $("#duzenlekutusu").hide();
    $("#kapla").val("").hide();
    })  
$("a.editly").live("click",function(){
    $("#kapla").show()
    var x = $("div.icerik").html();
    var oEditor = CKEDITOR.instances.editor1;
    oEditor.setData( x );
    //$("#editor1").val(x);
    $("#duzenlekutusu").show();
    })
</script>
</body>
</html>

【问题讨论】:

  • 如果我理解正确,div 不会因为您在提交后将其隐藏并将其重新设置为可见而将其重置为原始内容。打印“成功”后,您需要一个函数来重建该 div 的内容
  • 我添加了一个测试链接:actionsee.freehosting.com/sayfalar/dersler.php
  • 点击“İç Anadolu Bölgesi”>“Ankara”>“Ekonomi”菜单进行测试

标签: jquery ajax


【解决方案1】:

很难确切地看到发生了什么,如果可能的话,JSFiddle 会有所帮助。从我所看到的,也许是这条线:

 $('#duzenlekutusu').html(ajaxCevap); 

是否导致问题并清空您的窗口?

【讨论】:

  • 我使用了 ders_duzenle.php 源代码。
猜你喜欢
  • 1970-01-01
  • 2016-10-23
  • 1970-01-01
  • 2014-03-28
  • 2010-12-23
  • 2016-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多