无法使用JavaScript或jQuery设置隐藏的表单字段

时间:2014-09-09 22:09:17

标签: javascript jquery forms

我有一个使用JavaScript来获取浏览器/客户端时区偏移值的表单,然后我需要将该值设置为表单字段,以便当表单发布时,它将发送到我的后端脚本。

我可以使用下面的代码alert(clientTimeOffset)并提醒正确的值,但是当我提交表单时,它从不使用该值设置隐藏的表单字段,因此永远不会发布。

以下是我到目前为止尝试过的所有代码,请帮忙吗?

版本1

jQuery( document ).ready(function() {

    // Set TimeZone Offset Form Value
    var d = new Date();
    var clientTimeOffset = (d.getTimezoneOffset()/ 60 *(-1))+5;
    jQuery("#timezone").val(clientTimeOffset);

});

版本2

jQuery( document ).ready(function() {

    // Set TimeZone Offset Form Value
    var d = new Date();
    var clientTimeOffset = (d.getTimezoneOffset()/ 60 *(-1))+5;
    var x = document.getElementById("timezone");
    x.value=clientTimeOffset;

});

我的表格字段......

<input type="hidden" name="timezone" id="timezone" />

1 个答案:

答案 0 :(得分:0)

我觉得很傻,但问题是,不知何故,我有两个隐藏的表单字段具有相同的#ID,因此它将设置第一个值,然后第二个将在POST时将其覆盖为空。也许有一天这会帮助某人,确保你只有一个选择器匹配的表单字段!