jquery怎么和纯js一样接收onclick带来的参数?

如onclick="showMsg(xxx)"纯js里可以直接用function(变量)获得onclick里面的参数xxx。jquery是用$应该怎么写?... 如onclick="showMsg(xxx)" 纯js里可以直接用function(变量)获得onclick里面的参数xxx。jquery是用$应该怎么写? 展开
 我来答
yakun
2015-08-21 · TA获得超过419个赞
知道小有建树答主
回答量:426
采纳率:0%
帮助的人:282万
展开全部

1、纯JavaScript的写法:onclick的参数一般是从Dom元素中获取,比如获取input元素中的value值作为参数,在JavaScript中调用onclick的方法传参时都这么写:
<input type="text" id="input1" value="1111" onclick="getValue(this.vale)">  
然后我们定义一个getValue的方法即可:

function getValue(val){alert(val);}

另外一种不传参数<input type="text" id="input1" value="1111">  (注意没有onclick事件了)

document.getElementById(input1).onclick = function(){ alert(this.value); }

第一种传参的方法是JavaScript函数,所以在Jquery本身就是JavaScript的函数类库,所以这种也是可以使用的,同时在该方法里面可以使用Jquery类库,比如:

function getValue(val){
    alert(val);
    $('#input1').css('background','red');//Jquery实现
    document.getElementById('input1').style.background= 'red';//纯JavaScript实现
    
 }

第二种是给DOM元素添加点击事件,通过获取DOM元素的属性值达到第一种传参效果,Jquery一般都是使用这种方法。

2、Jquery的做法是不传参,而是给DOM元素添加点击事件,从而获取DOM的属性值,到达,纯JavaScript传参效果。所以Jquery的写法为<input type="text" id="input1" value="1111">:

$('#input1').click(function(){
    alert($(this).val());  
});
miniappiGG7QGdCzZ6zz
2013-04-07 · TA获得超过190个赞
知道小有建树答主
回答量:276
采纳率:100%
帮助的人:137万
展开全部

在JQuery中这样的响应方法是一样的写法,如果是下面这种


<input type='button' value='Banner' id='bmw'/>
<script>
var array1=[];
$("#bmw").click(function()
{
#你的代码,但是这个没参数的,参数可以写在一个变量里,用动态语言生成对应id上标的值
#方法不值一个,如果你能给个明确的要求,就能合理的写个js给你
});
</script>
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友883a16d
推荐于2016-01-03 · TA获得超过109个赞
知道小有建树答主
回答量:237
采纳率:100%
帮助的人:115万
展开全部

data-*  是html5的属性,只要名字不重复可以写无数个,想取多少个值都可以

<div id="a" data-a=""></div>

$("#a").on("click",function(){
    data = $(this).attr("data-a");
});
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhangjingkang
2013-04-08 · TA获得超过165个赞
知道小有建树答主
回答量:134
采纳率:0%
帮助的人:95.4万
展开全部

套用下楼上的这个例子:

<input type='button' value='Banner' id='bmw'/>
<script>
var array1=[];
$("#bmw").click(function()
{
alert(this.id);
alert(this.value);
//所以,可以在DOM元素上边添加一个自定义属性,
//然后用this.XX来获得,或者用JQuery的$(this).attr(XX)
});
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chouyou
2013-04-07 · TA获得超过140个赞
知道小有建树答主
回答量:246
采纳率:0%
帮助的人:118万
展开全部
yui3
Y.one("#id").click(function(e){ //e是事件类,通过它可以得到点击的节点,不是到jq 是不是这样
showMsg(xxx);
});
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式