如何将参数传递到JQuery函数中?
我想向Jquery函数传递一个值。 下面是Javascript示例代码。我想将此javascript函数转换为jquery函数。如何将状态名传递到jquery onclick函数中如何将参数传递到JQuery函数中?,jquery,html,Jquery,Html,我想向Jquery函数传递一个值。 下面是Javascript示例代码。我想将此javascript函数转换为jquery函数。如何将状态名传递到jquery onclick函数中 <a onclick="showState('state_name')">ADD STATE </a> function showState(state_name){ openbox_state(state_name); } 添加状态 函数showState(状态\名称){ open
<a onclick="showState('state_name')">ADD STATE </a>
function showState(state_name){
openbox_state(state_name);
}
添加状态
函数showState(状态\名称){
openbox_状态(状态名称);
}
请帮帮我。像这样:
$('#MyID').click(function () {
var StateName = $(this).text();
showState(StateName);
});
然后对于HTML,您可以放置一些ID,如下所示:
<a id="MyID">ADD STATE </a>
<a class="StateSelector">ADD STATE </a>
$(document).ready(function() {
$('.StateSelector').click(function () {
var StateName = $(this).text();
showState(StateName);
});
});
<a onclick="showState()" id="florida">ADD STATE </a>
function showState(state_name){
var state_name = $(this).attr('id')
openbox_state(state_name);
}
要连接事件处理,可以将jquery代码放入document ready函数中,如下所示:
<a id="MyID">ADD STATE </a>
<a class="StateSelector">ADD STATE </a>
$(document).ready(function() {
$('.StateSelector').click(function () {
var StateName = $(this).text();
showState(StateName);
});
});
<a onclick="showState()" id="florida">ADD STATE </a>
function showState(state_name){
var state_name = $(this).attr('id')
openbox_state(state_name);
}
蒙大拿州
$('a')。在('click',function()上{
var state=this.text;//或$(this.text();或$(this.html();
showState(州);
});
如果有多个
a
具有不同的参数,如下所示
<a onclick="showState('Delhi')">ADD STATE</a>
<a onclick="showState('Punjab')">ADD STATE</a>
<a onclick="showState('Gujrat')">ADD STATE</a>
function showState(state_name){
openbox_state(state_name);
}
添加状态
添加状态
添加状态
函数showState(状态\名称){
openbox_状态(状态名称);
}
然后可以使用如下自定义属性
<a state="Delhi">ADD STATE</a>
<a state="Punjab">ADD STATE</a>
<a state="Gujrat">ADD STATE</a>
$('a').click(function () {
var StateName = $(this).attr("state");
openbox_state(StateName);
});
添加状态
添加状态
添加状态
$('a')。单击(函数(){
var StateName=$(this.attr(“state”);
openbox_状态(StateName);
});
你没有真正弄清楚你是否有一系列的锚来添加不同的状态,或者
如果您这样做,您可以这样做,为每个链接记录适当的状态名称:
<a data-stateName="state_name">ADD STATE </a>
这将从html中删除内联JavaScript,然后使用jQuery将单击处理程序仅绑定到具有数据stateName
属性的
元素。然后,处理程序获取该属性的值以传递给openbox\u state()
函数
文档就绪处理程序确保在文档实际就绪之前,即在元素被解析并可以从JS访问之后,锚定单击绑定不会发生。(如果将JS放在body元素末尾的脚本块中,则不需要现成的处理程序。)您可以执行以下操作:
<a id="MyID">ADD STATE </a>
<a class="StateSelector">ADD STATE </a>
$(document).ready(function() {
$('.StateSelector').click(function () {
var StateName = $(this).text();
showState(StateName);
});
});
<a onclick="showState()" id="florida">ADD STATE </a>
function showState(state_name){
var state_name = $(this).attr('id')
openbox_state(state_name);
}
添加状态
函数showState(状态\名称){
var state_name=$(this.attr('id'))
openbox_状态(状态名称);
}
此函数将从链接中检索“id”值。然后可以将该值传递到“openbox\u state()”函数上。:-) 请为此行提供相应的代码,请添加STATE无需onclick=“showState(…),jquery将为您处理事件。您可能希望在HTML中添加一些ID以引用链接;请参阅编辑。我认为数据属性(
和$(this)。数据('STATE')
)如果您愿意,还可以使用$(this.data('stateName')
。@muistooshort-True。我没有这样做,因为我习惯于使用.data()
只检索以前用.data()设置的值
,不适用于属性值。在这种情况下,这无关紧要,但我不喜欢.data()
在用于检索html属性时尝试自动类型转换的方式。我听到你在“软件假装比它更聪明”部分,我更喜欢诚实和一贯的愚蠢:)