Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为多个按钮应用1个JavaScript语法_Javascript_Html - Fatal编程技术网

为多个按钮应用1个JavaScript语法

为多个按钮应用1个JavaScript语法,javascript,html,Javascript,Html,我有一个Javascript代码,可以将表格导出为Excel格式。一张桌子和一个按钮可以很好地工作 JS HTML 但是当我有多个表时,Javascript似乎不起作用! 首先,ID被更改为类,如下代码所示 请帮忙!谢谢 JS HTML 类是javascript中的保留字。将变量名更改为有效的名称,并用逗号分隔多个元素: var $class = $('.dvData, .dvData1'); 这里有一个解决方案,可以让它按您期望的方式工作: HTML: JAVASCRIPT: $(docum

我有一个Javascript代码,可以将表格导出为Excel格式。一张桌子和一个按钮可以很好地工作

JS

HTML

但是当我有多个表时,Javascript似乎不起作用! 首先,ID被更改为类,如下代码所示

请帮忙!谢谢

JS

HTML

类是javascript中的保留字。将变量名更改为有效的名称,并用逗号分隔多个元素:

var $class = $('.dvData, .dvData1');
这里有一个解决方案,可以让它按您期望的方式工作:

HTML:

JAVASCRIPT:

$(document).ready(function() {

    $(".toExcelButton").click(function() {
        var table = $("." + $(this).data('target'));
        var strCopy = $('<div></div>').html(table.clone()).html(); window.clipboardData.setData("Text", strCopy);
        var objExcel = new ActiveXObject("Excel.Application");
        objExcel.visible = false; 
         var objWorkbook = objExcel.Workbooks.Add; 
        var objWorksheet = objWorkbook.Worksheets(1); 
        objWorksheet.Paste; 
        objExcel.visible = true;
    });

});
首先:删除您的var类,并尝试使用selection或其他方法,因为该类已经是保留字,然后执行以下操作:

var selection = $('.dvData, .dvData1');

如果您需要其他信息,请告诉我。

使用var class=$'.dvData、.dvData';,以两者为目标。缺少逗号将导致脚本查找嵌套在.dvData中的.dvData元素。为什么要发布与11分钟前发布的@JonathanCrowe完全相同的答案?非常感谢Jonathan Crowe、NietzscheProgrammer和Blex!现在可以了。当我单击第一个按钮时,它生成第一个表,但当我单击第二个按钮时,它也生成第一个表。听起来好像只找头等舱。有什么想法吗?更新了密码。这是一个可以满足您需求的解决方案。重要的一点是能够将按钮点击绑定到一个特定的表上,这在本例中是通过按钮上的数据目标属性完成的。非常感谢你,Jonathan Crowe!是的,数据目标是解决此问题的主要关键。它按预期工作!嗨,乔纳森,同一页,我进入了另一个问题,你能看一下吗。谢谢
<table  class="dvData">
    <tr>
        <th>Account System</th>
        <th>Market Code</th>
        <th>Payment Amount</th>
    </tr>
    <tr>
        <td>RED</td>
        <td>222</td>
        <td>$103.00</td>
    </tr>
    <tr>
        <td>BLUE</td>
        <td>111</td>
        <td>$13.00</td>
    </tr>
    <tr>
        <td>GREEN</td>
        <td>555</td>
        <td>$143.00</td>  
    </tr>
</table>
<br />
<input type="button" id="btnExport" value="Export" onclick="TableToExcel();" /> 

<table  class="dvData1">
 <tr>
    <th>Billing System</th>
    <th>Market Code</th>
    <th>Payment Amount</th>
</tr>
<tr>
    <td>RED</td>
    <td>222</td>
    <td>$103.00</td>
</tr>
<tr>
    <td>BLUE</td>
    <td>111</td>
    <td>$13.00</td>
</tr>
<tr>
    <td>GREEN</td>
    <td>555</td>
    <td>$143.00</td>  
</tr>
</table>
<br />
<input type="button" id="btnExport" value="Export" onclick="TableToExcel();" />
var $class = $('.dvData, .dvData1');
<table  class="dvData">
    <tr>
        <th>Account System</th>
        <th>Market Code</th>
        <th>Payment Amount</th>
    </tr>
    <tr>
        <td>RED</td>
        <td>222</td>
        <td>$103.00</td>
    </tr>
    <tr>
        <td>BLUE</td>
        <td>111</td>
        <td>$13.00</td>
    </tr>
    <tr>
        <td>GREEN</td>
        <td>555</td>
        <td>$143.00</td>  
    </tr>
</table>
<br />
<input type="button" class="toExcelButton" data-target="dvData" id="btnExport" value="Export" onclick="TableToExcel();" /> 

<table  class="dvData1">
 <tr>
    <th>Billing System</th>
    <th>Market Code</th>
    <th>Payment Amount</th>
</tr>
<tr>
    <td>RED</td>
    <td>222</td>
    <td>$103.00</td>
</tr>
<tr>
    <td>BLUE</td>
    <td>111</td>
    <td>$13.00</td>
</tr>
<tr>
    <td>GREEN</td>
    <td>555</td>
    <td>$143.00</td>  
</tr>
</table>
<br />
<input type="button" class="toExcelButton" data-target="dvData1" id="btnExport" value="Export" onclick="TableToExcel();" />
$(document).ready(function() {

    $(".toExcelButton").click(function() {
        var table = $("." + $(this).data('target'));
        var strCopy = $('<div></div>').html(table.clone()).html(); window.clipboardData.setData("Text", strCopy);
        var objExcel = new ActiveXObject("Excel.Application");
        objExcel.visible = false; 
         var objWorkbook = objExcel.Workbooks.Add; 
        var objWorksheet = objWorkbook.Worksheets(1); 
        objWorksheet.Paste; 
        objExcel.visible = true;
    });

});
var selection = $('.dvData, .dvData1');