按钮单击处理程序不工作

时间:2017-09-28 14:53:42

标签: javascript html asp.net-mvc

我正在尝试将ExportPDF附加到cshtml文件上的按钮exportSelectedPdf,但是当我单击该按钮时,处理程序无法正常工作。有什么想法吗?

<input id="exportSelectedPdf" type="button" value="Export to PDF" />

<script type="text/javascript" language="javascript">

    function ExportPDF() {
        alert("Hi");
        var url=@Url.Action("ExportTransactionsAsPdf", "JournalController");
        exportSelectedTransactions(url);
    }

    document.getElementById("exportSelectedPdf").addEventListener("click", ExportPDF());

</script>

4 个答案:

答案 0 :(得分:0)

您将客户端与服务器端混淆。试试这个。

var url = '@Url.Action("ExportTransactionsAsPdf", "JournalController")';

并像这样绑定事件

document.getElementById("exportSelectedPdf").addEventListener("click", ExportPDF);

答案 1 :(得分:0)

使用以下代码:

<input id="exportSelectedPdf" type="button" value="Export to PDF" />

<script type="text/javascript" language="javascript">
function ExportPDF() {
alert("Hi");
var url=@Url.Action("ExportTransactionsAsPdf", "JournalController")
;
exportSelectedTransactions(url);
}
document.getElementById("exportSelectedPdf").addEventListener("click", ExportPDF);
</script>

答案 2 :(得分:0)

您应附加function引用为&#34;点击&#34;听众,而不是结果。 变化:

document.getElementById("exportSelectedPdf").addEventListener("click", ExportPDF());

到(不立即调用函数,只是传递对它的引用):

document.getElementById("exportSelectedPdf").addEventListener("click", ExportPDF);

答案 3 :(得分:0)

感谢您的重播。仍然无法获得附加的按钮工作。我在内联定义了onclick处理程序,这对我有用。

JSONObject obj = new JSONObject(str);//assuming that obj is the same object as in the example

//to get the id
int id = obj.getJSONObject("response").getJSONArray("items").getJSONObject(0).getInt("id");