简体   繁体   English

从Javascript获取值到输入类型隐藏

[英]Get value from Javascript to Input type Hidden

I am just trying to add code in this javascript to get values of slide to input type="hidden", but i can't get value into input type="hidden", what do I do wrong? 我只是想在这个javascript中添加代码来获取幻灯片的输入类型=“隐藏”的值,但我无法将值输入输入类型=“隐藏”,我该怎么办? Anyway, thanks for your help! 无论如何,谢谢你的帮助!

This is javascript code: 这是javascript代码:

// <![CDATA[
var hWidth, bWidth;

function setBgPos(v) {
    var off = v * hWidth;
    var pos = -bWidth + (v * bWidth);
    $('slider').setStyle({backgroundPosition: Math.round(pos - off) + 'px'});
}

function setSlideOutput(v) {
    $('percent').innerHTML = Math.round(v * 100) + '%';
}

Event.observe(window, 'load', function() {
    hWidth = $('slider-handle').getWidth();
    bWidth = $('slider-bar').getWidth();
    var slide = new Control.Slider('slider-handle', 'slider-bar', {
        sliderValue: 0.25,
        onSlide:
            function(v) {
                setBgPos(v);
                setSlideOutput(v);
                $('percentage').value = Math.round(v * 100) + '%';
            },
        onChange:
            function(v) {
                setBgPos(v);
                setSlideOutput(v);
                $('percentage').value = Math.round(v * 100) + '%';
            }
    });
    setBgPos(slide.value);
    setSlideOutput(slide.value);
});
// ]]>

Html: HTML:

    <!DOCTYPE html>
    <html lang="nl">
    <head>
<script src="//ajax.googleapis.com/ajax/libs/prototype/1.7.1.0/prototype.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/scriptaculous/1.9.0/scriptaculous.js"></script>
<style>
#slider, #slider-bar, #slider-handle {
    border: 0;
    padding: 0;
    margin: 0;
}
#slider {
    width: 300px;
    height:42px;
    background: url(img/bg.gif) no-repeat -300px;
    margin-left: 42px;
}
#slider-bar {
    width:300px;
    height:42px;
    background: url(img/track.png) no-repeat;
}
#slider-handle {
    width:42px;
    height:42px;
    cursor:move;
    background: url(img/gripper.png) no-repeat;
}
#percent {
    font-size: 75%;
    font-family: arial;
    font-weight: bold;
    text-align: center;
    padding-top: 1.1em;
}
</style>
    </head>
    <body>
    <div id="slider">
    <div id="slider-bar">
    <div id="slider-handle"><p id="percent"></p></div>
    </div>
    </div>
    <input type="hidden" id="percentage" name="percentage" value="0" />
    </body>
    </html>

你应该使用$('#percentage')而不是$('percentage')

Try using $('#percentage')[0].value 尝试使用$('#percentage')[0].value

What you need is DOM element, not jquery object. 你需要的是DOM元素,而不是jquery对象。

Or, alternatively, use $('#percentage').val('') 或者,使用$('#percentage').val('')

UPDATE: Solved to add setvalue, this did help me: http://www.ruby-forum.com/topic/143329 . 更新:解决了添加setvalue,这确实帮助了我: http//www.ruby-forum.com/topic/143329 Thanks for all the tips guys and more thanks for Geek Num 88! 感谢所有小贴士,感谢Geek Num 88!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM