Php,Javascript-动态表单id's和动态验证

Php, Javascript - Dynamic form id's and dynamic validation

本文关键字:动态 验证 id Javascript- 表单 Php      更新时间:2023-09-26

我几乎没有javascript编程技能,所以这一定是它的问题所在。我的问题没有那么复杂,但我就是找不到答案,我几乎尝试了所有的方法,但正如我所说,我在javascript编程方面很差劲。

我的问题是,我有一个php页面,在这个页面上有多个由mysql查询生成的表单。我使用它们将动态生成的隐藏字段值发布到另一个php文件中,在该文件中,我可以使用它们的发布值,而无需刷新主页。表单id(或名称)也由mysql查询生成。我使用javascript来验证(?)表单,并将其隐藏的内容发送到另一个页面。

Javascript:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
        $("#1").validate({
            debug: false,
            submitHandler: function(form) {
                $.post('process_like_dislike.php', $("#1").serialize(), function(data) {
                    $('#results').html(data);
                });
            }
            });
    });
    </script>

如您所见,本例中的表单id为1。我在一个页面上生成了近40个独特的表单,这取决于mysql查询。

Php:

<form name='$formnumber' id='$formnumber' action='' method='POST'>
<input type=hidden value='$us_id' name='us_id' id='us_id'>
<input type=hidden value='$an_id' name='an_id' id='an_id'>
<input type=hidden value='1' name='on' id='on'>
<input type=submit class=something value='' title='Something'>
</form>

我不知道我应该如何编写javascript代码来在提交时动态验证所选表单。我试图在javascript中获取php formnumber变量,但没有帮助。我不知道是否还有其他方法,但我只知道这一种。我需要将动态生成的隐藏值传递到另一个页面,但我需要一个动态生成的javascript,否则我不知道。

这段代码的主要概念是,我制作了一个页面,在那里你可以对一件事进行评分,而这件事有隐藏的值,我需要以post格式获得这些值,因为这是我可以决定按下哪个按钮在第二个php文件中进行mysql查询而不刷新当前文件的唯一方法。我不想要简单的帖子,因为我会丢失上一页,我不想刷新页面。

请帮帮我,谢谢你们。

@Michael Wheeler的解决方案比我最初提出的更优雅——然而,"this"没有设置为表单(我测试过),所以你必须将他的解决方案更改为$(form),而不是$(this),它将完美工作。=)

您将从AJAX中受益匪浅:http://www.w3schools.com/ajax/default.asp可能来自jquery,尽管我知道你没有提到它,以简化你的AJAX问题:http://api.jquery.com/jQuery.ajax/