jquery ajax提交表单时怎么获取当前点击的按钮对应的表单

 $('.url_form_submit').click(function(){
        var str_data=$(this).这里怎么取得当前点击按钮对应表单的所有input呢.map(function(){
             return ($(this).attr("name")+'='+$(this).val());
        }).get().join("&") ;
        alert(str_data);
        $.ajax({
          type: 'POST',
          async : false,
          url: '/index.php/domain_admin/updataIframeUrl',
          data: {domain_set:domain_set},
          error:function(){
                alert('请求错误');
            },
          success:function(data){
                alert(data);
            }
        });
    });
阅读 10.1k
5 个回答
$(this).closest('form').find('input') //如果这个点击的按钮在form 内部、
//不然只能通过给form设置 class 或者id 然后
$(#id).find('input');//$(.class).find('input')

应该用form的submit事件而非submit按钮的click事件。这样this就直接指向form了

每一个form应该有一个submit,最好不要用这样的方式提交数据。如果你非要用这样的方式,可以用$('form[index]:input')(不确定是正确的) 这样的方式。

// 你点击触发表单提交的按钮
var $button = $('button');

// 该按钮所对应的表单
var $form = $button.closest('form');

同意@HSFZXJY的

<form id=>
<button type="submit">
</form>

$('form').on('submit',function(){console.log(this)});
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题