如何在vBulletin中使用jQuery选择一个广播然后提交表单

How to select a radio then submit form with jQuery in vBulletin?

本文关键字:一个 广播 表单 提交 然后 选择 vBulletin jQuery      更新时间:2023-09-26

我正在编写一个用户脚本,它将我自己的JS注入到头部(这部分工作)。我正在使用该网站已经到位的jQuery。

我是vBulletin论坛的版主。我移动和关闭很多线程。我认为如果我将每个线程的点击次数减少2次,将会节省大量的时间。

使用.append(),我添加了我自己的<td>与"快速访问"<a>标签。
我想要发生的是,当我单击<a>标签(关闭或移动)时,它选择线程工具表单中的适当选项(据我所知,这是我编码的工作方式),然后提交表单,就好像我点击了执行动作按钮。

我当前的代码是:

$(document).ready( function() {
    var topbar = $('#threadtools').closest('tr');
    var newTool = '<td><a href="#" id="newClose" style="padding-left: 10px; padding-right: 10px;"><b>Close</b></a></td>' +
                    '<td><a href="http://google.com" id="newMove"><b>Move</b></a></td>'; // Google for testing purposes I wanted to make sure preventDefault was working
    topbar.append(newTool);
    $('#newClose').click(function() { 
        alert();
    });
    $('#newMove').click(function(event) { 
        event.preventDefault();
        //var form = $('input[name$="threadadminform"]');  // select form by name
        var button = $('input[value="Perform Action"]');   // select button by name

        var closeradio = $('#ao_oct');
        var moveradio = $('#ao_mvt');
        var copyradio = $('#ao_cpt');
        var editradio = $('#ao_edt');
        var deleteradio = $('#ao_dlt');
        var stickradio = $('#ao_sut');
        var mergeradio = $('#ao_mgt');
        var redirectradio = $('#ao_rrd');
        closeradio.removeAttr('checked');
        copyradio.removeAttr('checked');
        editradio.removeAttr('checked');
        deleteradio.removeAttr('checked');
        stickradio.removeAttr('checked');
        mergeradio.removeAttr('checked');
        redirectradio.removeAttr('checked');
        moveradio.attr('checked', 'checked');
        button.trigger();
    });
});

正如你所看到的,我正在尝试.trigger()提交按钮,这不起作用。
我也尝试了.submit()的形式var我在顶部声明,这也不起作用。

我怎么能得到这个提交,因为它会,如果我点击按钮,并把我下一个适当的页面?

trigger需要一个最小的事件,所以你需要传递button.trigger('click'),这样它就能够执行click事件。

你想要实现的示例演示是,看看上面位置的两个按钮示例。