php - 提交按钮上的 JavaScript

标签 php javascript html

我有一些问题。我有一个带有一个隐藏输入元素的 html 表单。我的 javascript 代码中有一个数组。我想捕获按下提交按钮事件(通过使用 jquery)并将数组数据推送到隐藏输入中。

问题是 - 首先会发生什么:表单日期将流向 .php 脚本,或者 javascript 的数组将被插入隐藏输入,并且后记 .php 脚本将被调用?为什么会这样?

TIA!

更新(代码示例):

...
// process $_POST['domains']
...

<form action="registration?id=reg" method="post" enctype="multipart/form-data" id="reg_form">
    ...
    <input type="hidden" id="domains" name="domains[]" value=""/>
    ...
    <input type="submit" name="go" value="Register"/>
</form>

<script type="text/javascript">
    var domainlist = [];

    Array.prototype.indexOf = function (name) {
        var ind = -1;
        for (var i = 0; i < this.length; i++) {
            if (this[i].name == name) {
                ind = i;
                break;
            }
        }
        return ind;
    }

    $(document).ready(function() {
        ...
    });

    function checkDomain() {
        ...
            req = $.ajax({
                type:           'post',
                cache:          false,
                url:            'ajax.php',
                data:           ...,
                success: function(data) {
                    $('#domain_list_wrap').delegate('input:checkbox', 'click', function () {
                        var dmnName = $(this).attr('name');
                        domainlist.push({name: dmnName, cost: domainsArr[dmnName.split('.')[1]]});
                        ...
                    });
                    $('#domain_cart').delegate('input:checkbox', 'click', function () {
                        domainlist.splice(domainlist.indexOf($(this).attr('name')), 1);
                        ...
                    });
                }
            });
        ...
    }
</script>

最佳答案

JavaScript submit 事件在提交表单时触发,但在向服务器发出请求之前(由于 JavaScript 在客户端运行,这非常有意义)。因此,您想象的工作方式应该没问题,您可以使用 jQuery 绑定(bind)到表单提交事件,如下所示:

$("#yourForm").submit(function() {
    //Submit event handler will run on form submit
});

submit 事件处理程序还可用于通过返回 false 来取消表单提交(例如,如果某些验证失败)。如果先把数据发送到服务器那是不行的!

关于php - 提交按钮上的 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7557022/

相关文章:

javascript - Javascript( Electron ) 'TypeError: Cannot set property '检查了“未定义”

html - 如何使用有效的 XHTML/CSS 制作 2 列列表?

html - 内联 block 与许多 child 一起休息

jquery - 单元格高度相等的基于列的网格

javascript - HTML、Javascript、PHP - 选择菜单 + 其他输入框

php - 是否可以拦截对不存在的函数的调用?

Javascript 滚动条 Var 无法正常工作

php-serial 不工作

php - 如何使用 PHP 从 mysql 中读取值

javascript - 如何将 > 字符后的每个字母大写并在遇到 < 字符时停止?