Javascript:将值分配/传递给输入框

时间:2011-10-14 08:13:40

标签: javascript

我有这个javascript的滑块,我的问题是我不能分配/传递滑块的值到输入框。我已经尝试在我的javascript中使用这个scripT“document.getElementByID('total')。value = pos”,但它没有传递任何东西。任何想法的家伙?提前谢谢!

HTML CODE:

< input type="hidden" id="total" value="" style="border:0; color:#f6931f; font-weight:bold;" runat="server" />   

JAVASCRIPT FUNCTION:

window.addEvent('domready', function() 
    {
        var mySlideB = new Slider($('slider_gutter_1'), $('slider_knob_1'),         $('slider_bkg_img_1'),
        {
            start: 1,
            end: 100,
            offset: 10,
            onChange: function(pos)
            {
                if (pos <= 10) {
                    $('slider_desc_value').setHTML("Not Important");
                }
                else if ((pos >= 11) && (pos <= 40)) {
                    $('slider_desc_value').setHTML("Partially Important");
                }
                else if ((pos >= 41) && (pos <= 60)) {
                    $('slider_desc_value').setHTML("Important");
                }
                else if ((pos >= 61) && (pos <= 85)) {
                    $('slider_desc_value').setHTML("Very Important");
                }
                else if (pos > 85) {
                    $('slider_desc_value').setHTML("Critical to our business");
                }

                $('slider_current_val').setHTML(pos + ' %');
                $('testjp').setHTML(pos);    

                                    // THIS IS NOT WORKING, HELP?
                **document.getElementById('total').value = pos;**

                                    //This work c/o Ravi. THanks!
                                    document.forms["form1"]["total"].value = pos;

            }
        }, null).setMin(1);

        $('slider_current_val').setHTML(100 + ' %');
    });

5 个答案:

答案 0 :(得分:2)

相反,试试这个,给你的输入和你的表格命名,即

<form name="form"><input type="hidden" name="total"/></form>

并试试这个

document.forms["form"]["total"].value = xxx;

答案 1 :(得分:1)

试试这个,

$('#total').val(pos);

并通过在函数内部发出警报来检查是否调用了onChange函数。

像thi一样改变你的功能,

$(document).ready(function(){

//your code here...
});

而不是window.addEvent('domready', function()

答案 2 :(得分:1)

输入有一个runat =“server”属性,因此ASP.Net引擎可以分配ID。

正如建议查看您的应用程序的来源,您将看到ID是否已更改。

如果是这样,修复很容易。

document.getElementById('<%= total.ClientID %>').value = pos

或建议其他两个答案

$('#<%=total.ClientID%>').val(pos);

希望这有帮助。

问候。

答案 3 :(得分:0)

为什么不使用

$('#total').val(pos);

它应该做的伎俩

答案 4 :(得分:0)

您是否确定您的输入存在?标签格式不正确,<input之间有空格。 正确的命令是getElementById,而不是ID。

你的javascript是正确的,放在一边。

相关问题