为什么这个HTML永远不会触发这个jQuery函数?

为什么这个HTML永远不会触发这个jQuery函数?,jquery,Jquery,我没有在CSS样式表中将showprayer定义为类 这就是为什么下面的HTML永远不会调用jQuery函数的原因吗 $('.showprayer').click( function(event) { console.log("showprayer"); $.post('/show_prayer', { 'name' : $(this).text() }, function(data) { //... do some

我没有在CSS样式表中将
showprayer
定义为类

这就是为什么下面的HTML永远不会调用jQuery函数的原因吗

    $('.showprayer').click( function(event) 
    {
      console.log("showprayer");

      $.post('/show_prayer', { 'name' : $(this).text() }, function(data) 
      {
           //... do something with the data returned from the post
      });
    });


    <a href="#" id="showprayer_106" class="showprayer">
        <tr id="prayer_106" >
            <td>Prayer <span class="prayerspn" id="prayerspn_106">106</span></td>
            <td>03/19/1968</td>
        </tr>
    </a>

然后将文本(
“106”
)从跨度中拉出,并将其传递给
$。post
调用。

HTML无效<代码>元素不能是标记的子元素

URI“show_prayer”强烈建议此函数完全用于获取和显示信息。如果是,那么链接是正确的选择(但是您应该更改JS,使其发出GET请求而不是POST请求),否则您应该考虑使用表单

假设一个链接是正确的前进方向,那么就比页面的顶部更重要

如果我们将上述内容应用到代码中,则得到如下结果:

<tr id="prayer_106" >
    <td><a href="/show_prayer?name=106">Prayer 106</a></td>
    <td>03/19/1968</td>
</tr>

jQuery将添加一个HTTP头(X-request-With:XMLHttpRequest),您可以使用它来决定/show\u prayer是返回一个完整的HTML文档,还是只返回要用JavaScript处理的数据。

HTML无效<代码>元素不能是标记的子元素

URI“show_prayer”强烈建议此函数完全用于获取和显示信息。如果是,那么链接是正确的选择(但是您应该更改JS,使其发出GET请求而不是POST请求),否则您应该考虑使用表单

假设一个链接是正确的前进方向,那么就比页面的顶部更重要

如果我们将上述内容应用到代码中,则得到如下结果:

<tr id="prayer_106" >
    <td><a href="/show_prayer?name=106">Prayer 106</a></td>
    <td>03/19/1968</td>
</tr>

jQuery将添加一个HTTP头(X-request-With:XMLHttpRequest),您可以使用它来决定/show\u prayer是返回一个完整的HTML文档,还是只返回您想用JavaScript处理的数据。

我会将像素更改为元素,否则可能是这样的:)DOM中可能还有一个元素,但其大小不可能单击,这就是为什么我在那里使用术语“像素”。我会将像素更改为元素,否则可能就是这样:)DOM中可能还有一个元素,但其大小不可能单击,这就是为什么我在那里使用术语“像素”。
function handlePrayer(e) {
    var uri = jQuery('a', this).attr('href');
    jQuery.get(uri, function (data) { /* Do something with the returned data */ };
    e.stopPropagation();
    return false;
}
jQuery('table.myTable tr').click(handlePrayer);