Javascript 如何在表格行中生成动态按钮并单击按钮打开新页面

Javascript 如何在表格行中生成动态按钮并单击按钮打开新页面,javascript,jquery,html,cordova,Javascript,Jquery,Html,Cordova,我实际上需要从服务url生成动态表,然后生成动态表 如何使用click事件在每个表行上生成动态按钮。 生成按钮后,我们如何将单击事件分配给按钮,我的意思是假设在一个表中有四列,如日期、id号、名称、位置,在单击每列或与该单元格相关的列时,它必须重定向到新页面。 或 如果单击一个表行,其中有4列,如日期、id号、名称、位置,则单击事件将以日期为参数,并单击事件函数,然后必须转到下一页/重定向 $('#btn_Day').click(function () { var ex = document

我实际上需要从服务url生成动态表,然后生成动态表

如何使用click事件在每个表行上生成动态按钮。 生成按钮后,我们如何将单击事件分配给按钮,我的意思是假设在一个表中有四列,如日期、id号、名称、位置,在单击每列或与该单元格相关的列时,它必须重定向到新页面。 或

如果单击一个表行,其中有4列,如日期、id号、名称、位置,则单击事件将以日期为参数,并单击事件函数,然后必须转到下一页/重定向

$('#btn_Day').click(function () { 

var ex = document.getElementById("dpp_info");
var clOptions = ex.options[ex.selectedIndex].value;
var clOptions1 = ex.options[ex.selectedIndex].text;

var dt = todaydate;
var dt1 = todaydate;

$.ajax({
    type: 'GET',
    url: xxxxx.xxxxx.xxxxx,
    data: frmDate_=" + dt + "&toDate_=" + dt1 + "",

    success: function (resp) {

        var Location = resp;

        var tr;        

        for (var i = 0; i < Location.length; i++) {

            tr = tr + "<tr>";
             tr = tr + "<td  style='height:20px' align='left'>" + Location[i].Name + "</td>";
            tr = tr + "<td  style='height:20px' align='left'>" +  Location[i].Date + "</td>";
             tr = tr + "<td style='height:20px' align='left'>" + Location[i].IdNum + "</td>";


            tr = tr + "</tr>";

        };

        document.getElementById('Wise').innerHTML = "<table class='r'>" + "<tr><thead ><th  style='height:20px'>Location</th>"
        + "<th  style='height:20px'>Date</th>" + "<th  style='height:20px'>Id Num</th>" + "</tr></thead>"
        + tr +
        "<tr></tr>" +
        "</table>";
        document.getElementById('Wise').childNodes[0].nodeValue = null;

    },
    error: function (e) {

        window.plugins.toast.showLongBottom("Please Enable your Internet connection");

    }
});
});
现在,在图像中,如果你看到有四列,假设我点击idnumb,那么与该特定编号相关的记录必须显示在单独的页面中


寻求帮助

在进一步讨论之后,关键是只使用处理程序并使用属性传递任何值。你可以在这里看到小提琴


我不确定我是否完全理解你想做什么,但听起来你想添加处理程序日期、id号、名称和位置。您是否可以向列/行中添加一个类以及所需的任何其他属性,如data name='number'。一旦你将这个添加到dom中,你就可以为这个类添加处理程序了?@JamesDale请检查这个问题,如果我点击22,它会显示IdNum为22的其他记录。检查这个,看看结果是否会记录在控制台中。嘿,我已经更新了JSFIDLE。将元素添加到dom后,需要添加处理程序
$('.button-click').off();
$('.button-click').on('click', function () {
    // navigate to new page
 // console.log('button click')

 // what you could do here is get the serialnumber which is an attribute on the button 
 var id = $(this).attr('data-id') // as long as this is unique this should always work

 var filteredResults = results.filter(function (result) {
  if (result.SerialNumber.toString() === id.toString()) {
    return result;
  }
});

var selectedRowValues = filteredResults[0];

// this will contain all the values for that row
console.log(selectedRowValues)

 // var dataValue = $(this).attr('data-url'); // dont't need this any more
 window.open(selectedRowValues.Url)
});