单击“重力表单”输入按钮时触发jquery

时间:2011-12-12 14:07:58

标签: jquery forms wordpress input onclick

我已经更新了这个问题,因为它可能是因为重力形式阻止了一个简单的功能。我说这个的原因是因为我尝试了很多选项(如下所列)来触发jQuery函数,并且它们都没有工作。

我有一个简单的功能,100%以下工作......

var $contactButton  = $(".contact-slide a"),
    $contactSlide   = $("#horizon-slide");

function () {
    $contactSlide.stop().css("top","0");
};

很简单,但是当我从重力点击我的提交按钮时,我正试图触发这个。


这是wordpress重力形式输入标记...

<input type="submit" id="gform_submit_button_1" class="button gform_button" value="Send" tabindex="7"></input>


以下是我尝试过的所有脚本,但没有一个脚本运行...

脚本一

$("input#gform_submit_button_1").on('click', function () {
    $contactSlide.stop().css("top","0");
});

脚本二

$("input#gform_submit_button_1").click(function() {
    $contactSlide.stop().css("top","0");
});

脚本三

$("input#gform_submit_button_1").focus(function () {
    $contactSlide.stop().css("top","0");
});

脚本四

$("form#gform_1").submit(function(event) {
$contactSlide.stop().css("top","0");
});


我也试过......

return false; 

return true;

在上面的所有脚本上,但没有一个返回该函数。如果我将脚本设置为返回false,那么表单不会提交,但如果我设置为返回true,则表单提交但函数不会运行。


为什么会发生这种情况,我认为这将是基本的东西?

感谢您的帮助。

3 个答案:

答案 0 :(得分:6)

您是否尝试在表单提交时运行某些内容?如果您正在使用表单的AJAX提交方法,则可以在提交表单后使用gform_confirmation_loaded事件运行一些JavaScript。

$(document).on('gform_confirmation_loaded', function(e, form_id){
   if(form_id == 2) {
       $contactSlide.stop().css("top","0");
   }
});

它将在每个表单提交上运行,以便指定表单,测试传递给事件处理程序的form_id参数。

答案 1 :(得分:0)

$contactInput.focus(function () {
    $contactSlide.stop().css("top","0");
    $('body,html').animate({
        scrollTop: 0
    }, 0);
    return true;
});

试一试:)

答案 2 :(得分:0)

如果您有表单,可以从表单提交中进行控制..

<script type="text/javascript" src="js/jquery1.6.1.js"></script>
<script type="text/javascript">
 $(document).ready(function () {
   $("#forma").submit(function(event) {
       //do what ever you need to here
        return false;
    });
});
</script>
<form name="1stform" method="post" action="/">
    <input type="text" name="misc" id="misc" />
    <input type="submit" name="submit" id="submit" value="submit 1st form"/>
</form>