我有这个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 + ' %');
});
答案 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是正确的,放在一边。