【问题标题】:Using hidden input to send extra data with Ajax使用隐藏输入通过 Ajax 发送额外数据
【发布时间】:2013-04-11 08:05:27
【问题描述】:

目前,当用户提交表单时,我正在使用隐藏输入通过 Ajax 发送一些额外的值。我使用隐藏值的原因是因为我可以有一个带有文本字段的长列表,并为每个文本字段分配一个按钮。每次单击按钮时,我都必须发送文本字段中的值以及一些额外的值。

问题是任何人都可以检查 Chrome 中的代码(例如)并更改隐藏字段中的值。有没有更好的方法呢?


编辑:添加了一些代码以更好地说明我的问题

HTML

<div>
    <input type="textfield" name="value1" value="Default value for textfield" />
    <input type="hidden" class="hiddenValue" name="hiddenSuperSecretValue" value="superSecret" />
    <button class="submitButton">Submit</button>

    <input type="textfield" name="value2" value="Default value for textfield" />
    <input type="hidden" class="hiddenValue" name="hiddenSuperSecretValue" value="superSecret" />
    <button class="submitButton">Submit</button>
    ... more fields ...
</div>

JS

$('.submitButton').click(function(){
    dataVar = "someValue" = $(this).closest('.hiddenValue').val();
    $.ajax({
        type: "POST",
        url: "/submitAjaxStuff.php",
        data: dataVar,
        cache: false,
        success: function(response){
            doSomething(response);
        }
    });
});

【问题讨论】:

    标签: html ajax forms hidden-field


    【解决方案1】:

    如果您使用像 PHP 这样的服务器端语言,那么更好的选择是将隐藏的值存储在会话中,这样用户就无法访问它们。

    【讨论】:

    • 因为我对每个字段都有不同的值,并且我不想为每个字段使用 ajax 函数,所以我不知道如何使用 session。请参阅我对原始帖子的编辑。
    猜你喜欢
    • 2019-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-31
    • 2020-02-29
    • 1970-01-01
    • 2022-12-03
    • 2013-06-09
    相关资源
    最近更新 更多