2012-02-27 79 views
0

我在我的页面上有多个DIV,而且我在使用另一个页面视图填充正确的DIV时遇到了问题。我会很感激一些帮助。用另一个页面内容动态填充正确的DIV

我有一个循环,填充DIV列表。最终解析HTML看起来是这样的:

<div id="replycontainer:1"> 
CONTENT1 
<button id="to:1" class="reply">REPLY</button> 
</div> 

<div id="replycontainer:2"> 
CONTENT2 
<button id="to:2" class="reply">REPLY</button> 
</div> 

<div id="replycontainer:3"> 
CONTENT3 
<button id="to:3" class="reply">REPLY</button> 
</div>  

现在让我们说一个用户点击了一个按钮“:3”,现在我需要添加一个“注释”框“#replycontainer:3”。

我认为是正确的JavaScript不起作用。它正确地检测点击的DIV类,但是没有其他页面内容被添加到选定的DIV中。

可能是什么问题?

使用Javascript/jQuery的我用它来检测点击了哪个按钮DIV:

<script type="text/javascript"> 

$(document).ready(function() { 
    $("button.reply").click(loadComment); 
}); 


function loadComment() { 
    var id = this.id.split('to:'); 
    var postId = id[1]; 
    var containername = "#replycontainer:" + postId; 

    $(containername).load("/Post/Comment"); //MVC Action pointer 
} 

</script> 

提前感谢!

回答

0

你错过了“'在

class="replycontainer:1 

,如果它是实际的代码。‘:’符号,因为我知道在id和class属性已被弃用,因为我知道

+0

ID和名称标记必须以字母([A-Za-z])开头,后跟任意数量的字母,数字([0-9]),连字符(“ - ”),下划线(“ _“),冒号(”:“)和句点(”。“)。 – shaunsantacruz 2012-02-27 00:32:37

+1

但如果你使用[:],如果你在CSS文件中使用这个类,它将被解释为伪类(例如:hover,:visited-熟悉?,但是:1 ???) – ZloyPotroh 2012-02-27 00:47:04

+0

好点。感谢澄清。 – shaunsantacruz 2012-02-27 00:52:35

1

在这里,您引用。 DIV:

var containername = "#replycontainer:" + postId; 

但容器实际上是一类:

<div class="replycontainer:1> 

另外,还有一个错字。你忘了用双引号关闭类标记。

我在这里已经固定它:

var containername = ".replycontainer:" + postId; 
... 
<div class="replycontainer:1"> 
+0

对不起,我发布这个例子时搞砸了。是的,这些是ID,而不是类。我在下面的DIV和Javascript中都使用了ID。我的Javascript是正确的,但它不起作用。什么可能是错的? – Shenaniganz 2012-02-27 00:36:53

0

我不认为在负载值()与Javascript/Jquery相关。

$(containername).load("/Post/Comment"); //MVC Action pointer 

load()只能在页面加载期间运行一些javascript。但是你正试图在客户端脚本上运行服务器脚本。请看看它。

+0

似乎工作... 我改变了:为_分隔符,它的工作原理。唯一让我困惑的是,处理这个逻辑需要很长时间。在屏幕上发生某些事情之前点击5秒钟后点击。 我认为这与你所说的没有任何关系,但是......是吗? – Shenaniganz 2012-02-27 01:07:54