动态按钮脚本不起作用

时间:2017-12-29 19:13:43

标签: javascript jquery html jquery-ui

我使用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);

并创建了表格

enter image description here

但是当我在这个按钮上创建一个事件时,没有任何事情发生..按钮上的事件代码是这样的

   $(".Downline_button").click(function(){
            debugger;
            var id = this.id;
            });

所以请告诉我如何在动态按钮上创建一个事件,如何读取按钮ID?

1 个答案:

答案 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()之前创建。