你可以在一个有行点击事件的表格中放置一个按钮吗?

时间:2014-06-04 15:53:43

标签: javascript php jquery html web

所以我试图为我正在使用的数据库创建一个Web界面。基本上tbale有数据行,我已经设置好了,当点击一行时,侧面板会显示并显示一些信息。现在我还在表格的第一列中添加了按钮,以便该行中的信息将保存在某些位置,但我无法在该按钮上进行点击事件。

行点击事件是否可能超过了主中心面板中的添加按钮点击事件。

行点击功能

function addRowClicks() {
        var table = document.getElementById("resultsTable");
        var rows = table.rows; // or table.getElementsByTagName("tr");
        for (var i = 0; i < rows.length; i++) {
            rows[i].onclick = (function() {
                var cnt = i; 
                return function() {
                    var specimenID = this.cells[1].innerHTML;
                    $.post('../scripts/displaySpecimenSideBar.php',{specimenID:specimenID},function(data){
                        var returnedInformation = data; 
                        $(".sidebarRight-innner").html(data);
                        $( "#accordion" ).accordion({
                            active:false,
                            heightStyle: "content",
                            collapsible: true});

                        var $marginLefty = $(".sidebarRight");
                        $marginLefty.animate({
                          marginLeft: parseInt($marginLefty.css('margin-left'),10) == 0 ?
                            $marginLefty.outerWidth() :
                            0
                        });

                        var sidebarRightOffset = jQuery(window).width()- $(".navElement").outerWidth()-5;
                        $(".sidebarRight").animate($(".sidebarRight").css("left",sidebarRightOffset));

                        mainContentWidth = jQuery(window).width() - jQuery(".sidebarleft").outerWidth() - jQuery(".navElement").outerWidth()-5;
                        $(".main-content").animate($(".main-content").css("width",mainContentWidth));
                        //jQuery('.main-content').width(mainContentWidth);
                        //alert(data);
                    });
                }    
            })(i);
        }
    }

按钮在php中生成

while ($row = mysql_fetch_array ($results)){
            $resultsString = $resultsString."<tr>";
                for ($z = 0; $z < $numOfFields; $z++){
                    if ($z==0){$resultsString = $resultsString.'<td><input type="button" id="test" name="Specimen'.$numberOfResults.'" value="ADD"></td>';
                               $resultsString = $resultsString."<td id='ID".$numberOfResults."'>".$row[$fieldsArray[$z]]."</td>";
                              }
                    else{
                        $resultsString = $resultsString."<td>".$row[$fieldsArray[$z]]."</td>";
                    }
                }
            $resultsString = $resultsString."</tr>";
            $numberOfResults++;
        }

2 个答案:

答案 0 :(得分:0)

您可以尝试在表的每一列上绑定事件,但是使用按钮绑定事件。

答案 1 :(得分:0)

听起来你的按钮事件有问题,虽然你的问题缺少很多信息。

也许是这样的?

$(".row-btn").click(function() {
     // show row info
});

$(".column-save-btn").click(function() {
     // submit form/ajax request to save
});

也许如果您添加更多信息,我们可以更好地了解所有内容。