如何让javascript处理在页面上加载json的html?
在一个特定的页面上,我使用json加载一些html代码,这些代码显示了有关用户单击某个内容时提交的内容的信息 在本例中,用户选择他最喜欢的棒球运动员,json返回一些html代码,用于格式化和显示球员的姓名如何让javascript处理在页面上加载json的html?,javascript,jquery,html,ruby-on-rails,json,Javascript,Jquery,Html,Ruby On Rails,Json,在一个特定的页面上,我使用json加载一些html代码,这些代码显示了有关用户单击某个内容时提交的内容的信息 在本例中,用户选择他最喜欢的棒球运动员,json返回一些html代码,用于格式化和显示球员的姓名 当该html加载到页面上时,live click javascript函数不再应用于加载的html。有什么方法可以刷新javascript以使其适用于它吗?您使用的是jQuery吗?他们有一个内置的方法来处理这个问题 $('#myElement').live('click', functio
当该html加载到页面上时,live click javascript函数不再应用于加载的html。有什么方法可以刷新javascript以使其适用于它吗?您使用的是jQuery吗?他们有一个内置的方法来处理这个问题
$('#myElement').live('click', function() {
/* Your Code Goes Here */
});
在jQuery 1.7中,同样的内容可以写成:
$('#myElement').on('click', function() {
/* Your Code Goes Here */
});
当用户单击他最喜欢的棒球运动员时,您向服务器发出请求,服务器返回一个包含球员信息的json对象,对吗?如果服务器返回一个包含html标记的字符串,而不是json对象,我认为这不是正确的方法 服务器应该响应的JSON对象应该如下所示
{Name : 'Kobe Bryant', JerseyNumber : 0, Salary : 500}
一旦您收到这个对象,您将解析它并将其内容放入页面上的一个元素中。使用HTML代码进行响应不是一个好的做法,您应该创建一个模板来存储运动员的数据
如果您在回答这个问题时给我们一些代码,我将非常乐意帮助您解决这个问题 在做了大量研究并与几个人交谈后,我发现需要在json回调后重新绑定事件 这是一个很大的帮助: 当使用jQuery的.click()方法并呈现新的html时,需要再次附加最初附加到它的javascript
使用带有“click”选项的.live()方法可以更容易地解决这个问题。.live()方法自动重新绑定新代码。是的,我使用的是jQuery,我有这个函数。当json请求返回我显示的html时,单击对返回的html不再有效。我返回的html元素与我单击的原始html元素具有相同的类。它返回一个json对象,其中一个变量是html字符串。所以它看起来像msg.html==“Name”,我很感激这个建议,但是我们需要在服务器端创建html来提高性能。这样,javascript就不必在页面加载时解析数据和创建html。