$ .ajax()成功不会使用div从另一个文件更新div(相同的id名称)

时间:2017-11-18 01:50:59

标签: javascript jquery ajax

我有两个html文件,两个都有同名id的div = example。我想使用$ .ajax()从第二个文件加载内容,而在第一个文件中将当前文本放在div中。问题是$(data).find('#example')不返回元素#example。我知道这个错误是因为我使用相同的id名称,但毕竟我想从另一个文件下载这个div,所以我不明白。谁能解释一下?

的index.html:

<nav>
    <ul>
        <li><a href="index.html">home</a></li>
        <li><a href="contact.html">contact</a></li>
    </ul>
</nav>
<div id="example">one one one one </div>

contact.html:

<nav>
    <ul>
        <li><a href="index.html">home</a></li>
        <li><a href="contact.html">products</a></li>                        
    </ul>
</nav>
<div id="example">one one one one </div>

$('nav a').on('click', function(e){
    e.preventDefault();
    var url = this.href;

    $.ajax({
        type: "POST",
        url: url,      
        success: function(date){
            $('#example').html($(date).find('#example'));
      }
   });
 });    

1 个答案:

答案 0 :(得分:0)

$('nav a').on('click', function(e){
    e.preventDefault();
    var url = this.href;

    $.ajax({
        type: "POST",
        url: url,      
        success: function(response){
            $('#example').html($(response.data).find('#example'));
      }
   });
 });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

https://gitlab.com/Piterden/mcmp-pyro/blob/1.0/addons/default/defr/mcmp-theme/resources/js/theme/init.js#L144