jquery:提交表单不起作用

时间:2012-05-15 20:05:29

标签: jquery forms

我之前发布了一个几乎类似的问题。 我的第一个问题已经解决,但现在我试着用2个小时来解决下一个问题。

确认后,我的表格必须提交。 我有一个很长的表单列表,并且有一个类被强制为jquery确认消息。 我可以从该表单中获取所使用表单和数据的名称(解决方案由你们中的一方提供!)。

要发送的表单的名称或ID存储在变量中。我试过两个:命名一个表单的id,两个都不能在我的代码中工作?

<script type="text/javascript"> 
$(".confirm_submit").click( function(){ 
var confirmteamnaam = $(this).closest("form").find("input[name='teamnaam']").val();
var frmnaam = $(this).closest('form').attr('id');
jConfirm( confirmteamnaam  + frmnaam, function(r) {
    if(r == true)
    {
        $(frmnaam).submit(); // this doe not work??
        return true;
    }
    else
        return false;
});
return false;

});

在确认文本中,名称正确显示。 尝试使用表单的id和名称,两者都不提交?

非常感谢任何解决方案!!

1 个答案:

答案 0 :(得分:3)

您需要使表单选择器成为一个id选择器:

$('#' + frmnaam).submit();

编辑:你有一些过度的查询和爬行。这里有一些重构可以减少其中一些:

$(".confirm_submit").click(function() {
    var $form = $(this).closest("form"),
        confirmteamnaam = $form.find("input[name='teamnaam']").val(),
        frmnaam = $form.attr("id");

    jConfirm(confirmteamnaam + frmnaam, function(r) {
        if (!r) return false;
        $form.submit();
        return true;
    });

    return false;
});