Jquery ui 如何向jQuery click函数发送多个参数?

Jquery ui 如何向jQuery click函数发送多个参数?,jquery-ui,jquery,jquery-plugins,jquery-forms-plugin,Jquery Ui,Jquery,Jquery Plugins,Jquery Forms Plugin,可能重复: 我想向Jquery函数传递多个参数。下面是Javascript示例代码。我想将此javascript函数转换为jquery函数。如何将这些参数传递到jquery onclick事件中 <a onclick="showState('state_name','state_id')">ADD STATE </a> function showState(state_name,state_id){ openbox_state(state_name,state_id)

可能重复:

我想向Jquery函数传递多个参数。下面是Javascript示例代码。我想将此javascript函数转换为jquery函数。如何将这些参数传递到jquery onclick事件中

<a onclick="showState('state_name','state_id')">ADD STATE </a>

function showState(state_name,state_id){
openbox_state(state_name,state_id);
}
添加状态
函数showState(状态名称、状态id){
openbox_状态(状态名称、状态id);
}

也许我会在这里使用数据集:

HTML:

实际上,您不必jwrap单击的对象,因为您可以使用API(如果您不支持IE9-)或简单的
getAttribute
方法获取属性值。但我发现这种语法更清晰易读。

正确的方法是:

<a href="#" id="myanchor" data-nm="state_name" data-id="state_id">ADD STATE </a>

<script type="text/javascript">
$(document).ready(function(event) {
   event.preventDefault();
   $('#myanchor').on('click', function() {
      openbox_state( $(this).data('nm') , $(this).data('id'));
   });
});
</script>

$(文档).ready(函数(事件){
event.preventDefault();
$('#myanchor')。在('click',function()上{
openbox_状态($(this.data('nm'),$(this.data('id'));
});
});
您的Jquery代码:

<script language="javascript" type="text/javascript">
 var state_name=$('#txtName').val();
 var state_id=$('#txtid').val();
$(document).ready(function () {
     $('a').click(function(){
        showState(state_name,state_id);
         });
});



function showState(state_name,state_id){
   openbox_state(state_name,state_id);
  }

</script>  

var state_name=$('#txtName').val();
var state_id=$('#txtid').val();
$(文档).ready(函数(){
$('a')。单击(函数(){
showState(州名称、州id);
});
});
函数showState(状态名称、状态id){
openbox_状态(状态名称、状态id);
}
您的HTML:

<a href="javaScript:void(0);">ADD STATE </a>
<input type="text" id="txtName" value="Tom Cruse" />
<input type="text" id="txtid" value="1" />


此jquery使用输入的id从输入中获取值,并将其用作调用方法的参数

如果您需要传递要在事件处理程序中使用的其他数据,jQuery click event binder已经支持了这一点。但是为了使用它,您必须通过代码而不是内联绑定来绑定事件处理程序

$(函数(){ $('#id')。单击({附加:“数据”},函数(){//handler code}); });


查看文档:

很抱歉,这太重了。为什么要使用输入?@dstroy:因为问题不太清楚,我刚刚演示了如何让任何人都能理解它的意思,我试图演示如何从html中获取值以用于jquery。似乎您缺少一些初始化txtName的代码。只有IE为具有ID的元素初始化窗口属性。即使在IE上,这也不会给它们一个val函数。关于您的信息,我每天都在我的工作例行程序中使用它们,并在所有浏览器中检查我的应用程序。是的,您是对的,我忘了在这里使用选择器,表明它可以找到输入,然后从中获取值。
<script language="javascript" type="text/javascript">
 var state_name=$('#txtName').val();
 var state_id=$('#txtid').val();
$(document).ready(function () {
     $('a').click(function(){
        showState(state_name,state_id);
         });
});



function showState(state_name,state_id){
   openbox_state(state_name,state_id);
  }

</script>  
<a href="javaScript:void(0);">ADD STATE </a>
<input type="text" id="txtName" value="Tom Cruse" />
<input type="text" id="txtid" value="1" />