2012-08-17 52 views
0

我的大部分html都是通过Jquery请求提供的数据。使用JQuery修改按功能写入文档的数据

$("#main").html(passedData); 
} 

页的伟大工程,但想任何JavaScript添加到被写入的数据,现在我遇到的问题:它是通过将其插入一个“主”的div像这样写到页面DIV。

即我有表插入到div,我试图编写脚本,隐藏某些单元格时单击其他单元格。我已经使用http://jsfiddle.net/来确保我的所有JS都是正确的,但由于某些原因,似乎JS函数看不到div中的数据,并且不会操纵它。

有什么我失踪?当把数据写入这样的页面时,你是否必须做某些事情来使用javascript来引用这些数据?

+5

如果您没有发布您正在使用的实际代码,则没有人可以帮助您。 – Pointy 2012-08-17 13:44:38

+1

我打赌你在添加新表之前分配点击事件。但我无法验证这一点,因为你没有显示出问题的例子。 – epascarello 2012-08-17 13:48:04

+0

你们两个都对,谢谢你的帮助。对不起,我没有包括代码,与我的网站的安装方式,将不得不从约10个位置:( – 2012-08-17 14:21:30

回答

1

你必须将事件处理程序附加到这样的“未来”的元素:

$("#main").on("click", ".myelement", function(){ 
     // Do something 
}); 

更多here。另外,如果你发布你的实际代码会更容易。

+0

太棒了,解决了问题! – 2012-08-17 14:45:01

0

如果没有实际的代码,很难排除故障,但我几乎可以肯定的问题是,当您的jQuery代码执行时,通过AJAX拉入的元素不存在。因此,他们不会参加任何活动。

你应该看看使用jQuery's .on() event handler。将它附加到DOM准备就绪时存在的父元素,并且可以操作其中动态拉入的任何元素。

+0

谢谢,这就是我想弄明白,看起来像我需要在数据写入页面后添加这些事件处理程序 – 2012-08-17 13:55:50

+0

不要忘记提供任何帮助你的答案;如果它解决了你的问题,请接受答案 – Travis 2012-08-17 13:59:28

+0

实际上,我发现了解决问题的一种简单方法。在将数据写入页面的函数结束时,我添加了事件处理程序,并且它们正常工作。感谢您的帮助。 – 2012-08-17 14:01:03