Javascript 生成的提交按钮无法在 Firefox 中发布

标签 javascript php html forms firefox

我看过与此问题相关的类似帖子,但没有一个被证明是有用的。

我有几个由 javascript 生成的表单提交按钮。

PHP 根据按下的按钮设置某些函数参数。 问题是,如果提交按钮是由 javascript 生成的,则它们根本不会添加到 POST 数组中;如果我将提交按钮直接放入 View 中,它们就可以正常工作。 这只是 Firefox 中的问题

注意:这不是实际提交的表单的问题 - 只是提交按钮的 name=>value 没有传递给 POST。

$('#my-total-dial').highcharts(Highcharts.merge(gaugeOptions, {
    yAxis: {
        min: 0,
        max: myTotalRecords,
        title: {
          text: 'All Time'
        }
    },

    credits: {
        enabled: false
    },

    series: [{
        name: 'All',
        data: [myTotalRecords],
        dataLabels: {
            format: '<div style="text-align:center"><span style="font-size:18px;color:' +
                ((Highcharts.theme && Highcharts.theme.contrastTextColor) || 'black') + '">{y}</span><br/></div>' +
                   '<button name="my-total-records-view" class="glyphicon glyphicon-eye-open" title="View Records"></button><button name="my-total-records-csv" class="glyphicon glyphicon-file" title="Export Records to Spreadsheet"></button>'
        },
        tooltip: {
            valueSuffix: ' records'
        }
    }]

}));

在 Chrome 中,这是 POST 输出的内容:

array(3) { ["_token"]=> string(40) "XB16S144KnTue3ER6x4H8mdQO1rwxGP6BmAciYvK" ["my-total-records-view"]=> string(6) "Submit" ["user_name"]=> string(1) "1" }

这就是我在 Firefox 中得到的

array(2) { ["_token"]=> string(40) "UTKWISXMNvUfGjfFxxya8ojYXSgGc8dS5kUS5Hck" ["user_name"]=> string(1) "1" } 

最佳答案

默认<button> elements 不提交表单。使用<input type='submit'>相反。

关于Javascript 生成的提交按钮无法在 Firefox 中发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27258767/

相关文章:

javascript - 使用 Dexie.js 处理请求队列异步

php - MySQL:当一个表上存在多个连接时,计算 NULL 或 0 值

php - __DIR__ 在类中的用法

php - 如何在单个表达式中从动态对象检索静态属性?

php - 从另一台服务器获取图像

javascript - DOM动态表计算

javascript - jquery 克隆 + 实时问题

python - “PlayerStatsForm”对象没有属性 'username'

javascript - 使用 JavaScript 中的类更改文本

html - 如何更改导航器的渲染字体