我使用java脚本在html表中创建了一个动态按钮。代码是这样的
$('#dataTables-data').empty();
jQuery.each(searchTO, function(i, item) {
historyrowid += '<tr><td style=" border: 1px solid black;">' + Math.round(item.SNo * 100) / 100+
'</td><td style=" border: 1px solid black;">' +Math.round( item.DistributorId* 100) / 100 +
'</td><td style=" border: 1px solid black;">' +item.DistributorName+
'</td><td style=" border: 1px solid black;">' +item.Bonuspercent +
'</td><td style=" border: 1px solid black;">' +Math.round( item.PrevCumPV * 100) / 100+
'</td><td style=" border: 1px solid black;">' + Math.round(item.exclpv* 100) / 100 +
'</td><td style=" border: 1px solid black;">' + Math.round(item.SelfBV * 100) / 100+
'</td><td style=" border: 1px solid black;">' + Math.round(item.grouppv * 100) / 100+
'</td><td style=" border: 1px solid black;">' + Math.round(item.Totalpv * 100) / 100+
'</td><td style=" border: 1px solid black;">' + Math.round(item.totalBv * 100) / 100+
'</td><td style=" border: 1px solid black;"><button type="button" class="Downline_button" id="'+item.DistributorId+'" >Downline</button></td></tr>';
});
$('#dataTables-example').append(historyrowid);
并创建了表格
但是当我在这个按钮上创建一个事件时,没有任何事情发生..按钮上的事件代码是这样的
$(".Downline_button").click(function(){
debugger;
var id = this.id;
});
所以请告诉我如何在动态按钮上创建一个事件,如何读取按钮ID?
答案 0 :(得分:1)
您需要将事件处理程序附加到文档并将事件委托给元素。
您可以这样做:
function Update-Myself
{
[CmdletBinding()]
param
(
[Parameter(Mandatory = $true,
Position = 0)]
[string]$SourcePath
)
#check that the destination file exists
if (Test-Path $SourcePath)
{
#The path of THIS script
$CurrentScript = $MyInvocation.ScriptName
if (!($SourcePath -eq $CurrentScript ))
{
if ($(Get-Item $SourcePath).LastWriteTimeUtc -gt $(Get-Item $CurrentScript ).LastWriteTimeUtc)
{
write-host "Updating..."
Copy-Item $SourcePath $CurrentScript
#If the script was updated, run it with orginal parameters
&$CurrentScript $script:args
exit
}
}
}
write-host "No update required"
}
Update-Myself \\path\to\newest\release\of\file.ps1
这将适用于具有此id的所有元素,无论它们是否在document.ready()之前创建。