具有多个参数的checkbox函数调用
checkbox function call with multiple parameters
我有一个简单的复选框和下面的标签。
<input id="unreadCheck0" class="styled" type="checkbox" value="WSIO20DEMS131402">
<label for="unreadCheck0">
<a id="unread0" class="alert-link" href="javascript:loadSingleUnreadAdvisory('WSIO20DEMS131402',0,'201605','06',0);">WSIO20DEMS131402</a>
</label>
上面的整个代码将通过javascript动态插入。此外,还会有多个如上所述的复选框。我的目标是对两个事件进行两次不同的函数调用。
第一个,当我点击复选框标签时。我已经做到了这一点。
第二个,当我点击复选框时,我需要用不同的参数调用同一个函数。例如loadSingleUnreadAdvisory('WSIO20DEMS131402',1,'201605','06',0);
我可以为所有复选框编写侦听器。但是如何将多个参数传递给该函数呢?我可以用分隔符发送value属性内的所有值。还有其他更好的方法吗?
您可以使用HTML5数据-*属性。您可以在data-*属性中拥有任何元素的所有数据。
下面是这样的。
$(document).ready(function(){
$(".chkBoxLabel").on("click", function(evnt){
evnt.preventDefault();
console.log($(evnt.target).data("info"));
var param1 = $(evnt.target).data("info")
callMe(param1);
});
$(".chkBox").on("click", function(evnt){
console.log($(evnt.target).data("fname"));
console.log($(evnt.target).data("lname"));
var param1 = $(evnt.target).data("fname")
var param2 = $(evnt.target).data("lname")
callMe(param1, param2);
evnt.stopPropagation();
});
function callMe(){
// Based on number of params you can handle appropriately
console.log(arguments.length);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label class="chkBoxLabel" data-info="label1">
<input class="chkBox" type="checkbox" data-fname="sandeep" data-lname="nayak"/>
Chkbox1 </label>
<label class="chkBoxLabel" data-info="label2">
<input class="chkBox" type="checkbox" data-fname="sample" data-lname="name"/>
Chkbox2</label>
相关文章:
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 在输入字段上有两个函数调用,一个在Blur上,一个不在Angular中
- 如何在Javascript函数调用中循环变量
- Javascript:应为赋值或函数调用,但实际看到的却是表达式
- 如何远程检查JavaScript应用程序的函数调用堆栈
- javascript函数调用不起作用
- 为什么这个函数调用会破坏程序并导致未定义的变量
- 如何通过函数调用设置图像的src
- 从全局函数调用Ember控制器上的方法
- 为什么Jquery$.ajax在函数调用中触发所有statusCode,即使调用成功
- JavaScript函数调用(arg1)(arg2)
- 打印链接时,将javascript函数调用到链接中
- 在函数调用中封装数据除了隐藏数据之外还有什么优点
- 无法从JavaScript中的函数调用对象属性
- 对中的函数调用进行排序是回调的唯一方法
- 函数调用方法有什么用
- Javascript:JSHint:应为赋值或函数调用,但实际看到的却是表达式
- HTML5(Bootstrap)通过函数调用运行动画
- 函数调用不起作用
- 具有多个参数的checkbox函数调用