jQuery输入值未通过表单提交更新

时间:2013-11-04 12:14:09

标签: php jquery html forms form-submit

在我的HTML表单提交之前,我在隐藏的输入元素中放了一些值,这些值不是随表单一起提交的,有任何错误或什么?

例如:

以下是我的表单功能:

<form id="clientForm" name="clientForm" method="post" enctype="multipart/form-data" action="clients.php" onClick="beforeSubmit(); return false;">
    <input type="text" name="OLD_BRANCH_FILTERS_ALL" id="OLD_BRANCH_FILTERS_ALL" value="">
</form>

以下是我的JS功能:

<script language="javascript" type="text/javascript">

    function beforeSubmit(){

        $('#OLD_BRANCH_FILTERS_ALL').attr('value', 'xyz');

        alert(document.getElementById('OLD_BRANCH_FILTERS_ALL').value);

        document.clientForm.action = 'clients.php?saveBtn=Save';
        document.clientForm.submit();
    }

</script> 

现在,当我在PHP中检查表单请求$_REQUEST时,它在元素中没有显示任何值。

任何线索,为什么它不起作用。

提前致谢!

1 个答案:

答案 0 :(得分:1)

您的onlick未及时调用以设置值,请尝试这种方式

<form id="clientForm" name="clientForm" method="post" enctype="multipart/form-data" action="clients.php">
    <input type="text" name="OLD_BRANCH_FILTERS_ALL" id="OLD_BRANCH_FILTERS_ALL" value="">
</form>

和jquery

$('#clientform').submit(function() {
    beforeSubmit();
});

另外,如果您还想对可以使用的字段进行验证,

$('#clientform').submit(function(e) {
    beforeSubmit();
    if (!{VALID}) {
       e.preventDefault();
    }
});