簡體   English   中英

如何在 jquery onclick 中傳遞多個參數

[英]How to pass multiple parameter in jquery onclick

 $(document).ready(function () { var from='2022-02-21'; var to='2022-02-25'; var category ='rt'; var btndiv = '<div class="col-12 text-right">\ <input type="button" value="Generate Invoice" id="btngenerateinvoice" onclick="generateinvoice('+ from + ',' + to + ',' + category + ')" class="btn btn-blue btn-sm" /></div>'; $(".btndiv").append(btndiv); }); function generateinvoice(ff, tt, cc) { alert("helo"); var f = ff; var t = tt; var c = cc }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="row btndiv"> </div>

我在 onclick 上動態傳遞三個參數 generateinvoice function 但 generateinvoice 這些 function 沒有調用

問題是onclick="generateinvoice中的值在呈現時,代碼認為它是變量,但尚未定義。您可以在每個變量前后添加\'

所以你可以做onclick="generateinvoice(\''+ from + '\',\'' + to + '\',\'' + category + '\')"

如果沒有\' ,呈現的代碼可能看起來像generateinvoice(from,to,category) ,但是當你添加這些代碼時,代碼會將變量呈現為 string,s 所以它看起來像generateinvoice('from','to','category')

演示

 $(document).ready(function() { var from = "f", to = "t", category = "cc"; var btndiv = '<div class="col-12 text-right">\ <input type="button" value="Generate Invoice" id="btngenerateinvoice" onclick="generateinvoice(\''+ from + '\',\'' + to + '\',\'' + category + '\')" class="btn btn-blue btn-sm" /></div>'; $(".btndiv").append(btndiv); }); function generateinvoice(ff, tt, cc) { alert("helo"); var f = ff; var t = tt; var c = cc }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="row btndiv"> </div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM