使用javascript设置隐藏的输入值

时间:2012-01-12 10:27:58

标签: javascript jquery

function GetWidth(){
    var TBL_width = document.getElementById('wrap_tbl').offsetWidth;
    return TBL_width;
}
var w = GetWidth();

<input type="hidden" id="tbl" value= w />

这可能吗?

我想将JavaScript变量存储在隐藏输入元素的value属性中。请指导我如何做到这一点

5 个答案:

答案 0 :(得分:7)

Jquery版本:

$("#tbl").val(w);

JavaScript版本:

document.getElementById("tbl").value = w;

在这种情况下,隐藏和“未隐藏”输入之间没有区别。

建议:如果您的GetWidth函数只有一行,并且该行不太复杂,您可以从该方法中提取它。

function setWidth(){
    var TBL_width = document.getElementById('wrap_tbl').offsetWidth;
    document.getElementById("tbl").value = TBL_width;
}

答案 1 :(得分:4)

使用javascript设置隐藏元素的value属性:

var w=GetWidth();
document.getElementById('tbl').value = w;

或jQuery风格:

var w=GetWidth();
$('#tbl').val(w);

答案 2 :(得分:2)

这绝对不行......你已经意识到: - )

看看你对元素“wrap_tbl”做了什么......你是通过使用document.getElementById()来访问它的。你可以做同样的事情来访问隐藏的元素

document.getElementById('tbl').value = w;

答案 3 :(得分:1)

您可以使用javascript设置值。

document.getElementById('tbl').value=w;

如果您使用jQuery,只需$('#tbl').val(w);

答案 4 :(得分:0)

由于输入的价值已经回答了,一个问题,

您是否需要将其作为提交时发送的参数?

如果没有,一个建议:你总是可以使用jquery data method

$('body').data('myDesiredName','myDesiredValue');

并检索它

alert($('body').data('myDeesiredName')); //will alert 'myDesiredValue'

通过这种方式,您可以始终存储多个值和变量,而无需隐藏元素,

快乐的编码;)