jQuery插入ajax内容



这个函数在一个特定的div

中插入一个文件上传字段
$(".add_file_field").click(function() {
    var qid = $(this).attr("rel");
    $(this).parent().before("<div id='p_holder'></div>");
    $("#p_holder").load("<?=site_url('survey/add_upload_field')?>", {
        'qid': qid 
    });
    return false;
});

点击代码片段

中的链接触发
<span class="add_field_wrap">
    <a rel="31" class="add_file_field" href="http://domain.com/kms/#">
        Add another file
    </a>
</span>

我怎么能让它插入的内容之前span.add_field。包装,即。没有指定接收内容的特定容器吗?span和所有其他标记必须保持原位;关键是用户可以添加任意多的文件上传字段。

谢谢

$(".add_file_field").click(function(){
    var qid = $(this).attr("rel");
    var parent = $(this).parent();
    $.get("<?=site_url('survey/add_upload_field')?>", {'qid': qid }, function(data) {
        $(parent).before(data);  
    });
    return false;
});

这是你想要的吗?

$('.add_field_wrap').before(required_html_content);
$(".add_file_field").click(function(){
    var qid = $(this).attr("rel");
    $(this).parent().before("<div id='p_holder'></div>");
    $("#p_holder").load("<?=site_url('survey/add_upload_field')?>", {'qid': qid },
      function(data){
         $("span.add_field_wrap").insertBefore(data);
    })
   return false;
});

试试这个

$(".add_file_field").click(function(){
    var qid = $(this).attr("rel");
    if(!$("#p_holder").length){
      $(this).parent().before("<div id='p_holder'></div>");
    }
    $.get("<?=site_url('survey/add_upload_field')?>", {'qid': qid },
     function(response){ 
       $("#p_holder").append(response);
    });
    return false;
});

最新更新