【问题标题】:Making table row clickable in jsp在jsp中使表格行可点击
【发布时间】:2014-05-27 23:07:51
【问题描述】:

我有表格行,我想让整行可点击。所以要做到这一点,我要修改以下 ajax 代码:

$(document).ready(function() {
    $('#myrow').click(function ()
    {
        //alert("hi");
        $.ajax({

            type: "post",
            url: "shownotification.jsp", 
            data: {
                notifyidd: $('#notifyidd').val(),
                notifyuser: $('#notifyuser').val()

            },
            success: function(msg){      
                    //if(msg == "success")
                    alert('Data updated.');
                    window.location.reload();
            }
        });
    });

});

但问题是它只是让我的第一行可点击,而所有其他人仍然不能点击。 可能是什么原因?请帮忙。

【问题讨论】:

    标签: javascript jquery ajax jsp html-table


    【解决方案1】:

    目前您似乎为您的tr 重复了id,请尝试改为应用类:

    <tr class="myrow" ......
    

    然后您可以使用. 按类定位元素:

    $(document).ready(function() {
        $('.myrow').click(function () {
            // Your code here
        });
    });
    

    【讨论】:

    • 该行现在被选中。但是没有打印成功消息警报。可能是什么原因?
    • 请检查shownotification.jsp是否是您文件的正确路径
    • 如果我想要在此函数中单击的每一行都有一个值怎么办?
    • jsp页面返回成功,但窗口没有重新加载。请帮助
    【解决方案2】:

    将您的代码与 on 绑定,并使用之前的代码完成

    HTML

    <table>
     <tbody> 
       <tr class="myrow">.......
       </tr>
     </tbody>
    </table>
    

    jQuery

    你可以尝试两种方法

    $(document).ready(function() {
        $('.myrow').click(function ()
        {
    //your stuff
    
        });
    
    /***or can try this below method**/
    $('table').on('click', 'tr', function() {
       //your stuff 
    });
    
    });
    

    【讨论】:

      【解决方案3】:

      试试这个

      $(document).on('click', '#table-id tr', function() {
          alert('Hello');
      });
      

      【讨论】:

      • @Srridhar table_id 是整个表的 id 吗?它仍然不起作用
      • @user3522121 是整个表 id
      • 该行现在被选中。但是没有打印成功消息警报。可能是什么原因?
      【解决方案4】:

      在您的代码中,您在 id 上提供点击事件

      $('#myrow').click(function ()

      所以它不起作用,因为 div 的 id 必须是唯一的。用类名更改您的行 ID,然后它会正常工作

      $('.myrow').click(function ()
      

      参考以下链接

      Demo Link

      表格 HTML 是

       <table style="width:300px">
      <tr class="tableRow">
        <td>Jill</td>
        <td>Smith</td>        
        <td>50</td>
        </tr>
      <tr class="tableRow">
        <td>Eve</td>
        <td>Jackson</td>      
        <td>94</td>
      </tr>
      
      <tr class="tableRow">
        <td>John</td>
        <td>Doe</td>      
        <td>80</td>
      </tr>
      </table>
      

      点击事件脚本

      $(".tableRow").click(function(e){
        alert("Table Tr Clicked");
      });
      

      【讨论】:

      • 它现在工作正常。但是没有打印成功警报。可能是什么原因?
      • 检查控制台中的响应,这样你就会得到确切的问题。
      • 如果我想要在此函数中单击的每一行都有一个值怎么办?
      • 将 id 分配为您想要的值,然后点击获取属性
      • jsp页面返回成功,但窗口没有重新加载。请帮助
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-03
      • 1970-01-01
      • 1970-01-01
      • 2017-11-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多