2013-07-19 56 views
0

我想用一个按钮替换一个div容器与jQuery onclick,但我不知道该怎么做。我试过这个:用同一div替换div onclick与jQuery

jQuery(document).click(function() { 
("#dynamic").load("single.php #partial_index"); 
}); 

但是我该如何替换它呢?现在它不会出现,如果我点击它(它什么都不做),但这是正常的,我猜是因为我没有声明替换div。有什么变化可以让我做这项工作吗?

我想用一个名为test的ID替换一个div,如果我点击动态按钮。我希望它被single.php #partial_index所取代。该按钮现在不做任何事情。

回答

0
$("#dynamic").click(function() { 
    $('#test').replaceWith($('#partial_index')); 
}); 
+0

不,它说'失踪)后的参数列表 ' – Johan

+0

我已经编辑我的答案关闭括号..看看你是否已经关闭了括号正确 – Krishna

1

此代码现在所做的是将单击处理程序绑定到文档。当用户点击该文件,它加载single.php #partial_index#dynamic元素(尽管它缺少$$('#dynamic')

这里就是我想你想:

$('#dynamic').click(function() { 
    $('#test').load("single.php #partial_index"); 
}); 
+0

什么也没有发生的onclick ... – Johan

+0

检查您的JavaScript控制台和网络选项卡是否有错误。 –

+0

这不是我的问题的答案。它不会取代一个东西。 – Johan

3

首先,请确保您的主要代码是INSIDE在DOM准备好结构,像这样:

jQuery(document).ready(function() { 
    // This fires when the DOM has loaded (thus all your link(stylesheet) and script includes at the very least 
}); 

里面你的功能,我看你使用( '#dynamic'),wheras它缺少$ jQuery的全球或jQuery的namespa CE本身,使用它像这样:

jQuery('#dynamic'); 

或者

$('#dynamic'); 

接下来,你有你想要用来替换一个div里面内容的按钮?

$('button').click(function() { 
    $('#dynamic').load('single.php#partial_index'); 
}); 

您也可以用新元素替换您的内容,就像这样:

$('#dynamic').replaceWith($('<div>I am a new jQuery dynamic element!</div>')); 
+0

感谢您的回答,我想这一点: '' 但它什么也没做? – Johan

+1

Upvote for your work。 – Johan

1

未经测试,但像这样的东西应该工作

$("#dynamic").click(function() { 
    $("<div />").attr("id", "#partial_index").load("single.php #partial_index", function(data){ 
     var newDiv = $(this).html(data); 
     $('#test').replaceWith(newDiv) 
    }) 
}); 
+0

感谢您的回答詹姆斯,但什么也没有发生任何。 – Johan

+0

Upvote为您的工作。谢谢 – Johan