2012-08-31 49 views
1

我想从一个文本字段更新从一个JavaScript更新Telerik MVC滑块的值。这里是Telerik的脚本:从文本字段telerik mvc滑块值

<input value="" id="PSlice" name="PSlice" /> 
<%= Html.Telerik().Slider<int>() 
     .Name("SliceSlider") 
     .HtmlAttributes(new { style = "color: white" }) 
     .TickPlacement(SliderTickPlacement.None) 
     .Value((int[])$('#PSlice').val()) 
     .Max(100) 
     .Min(0) 
     .ClientEvents(events => events 
      .OnLoad("onLoadSlider") 
      .OnChange("onChangeSlider") 
      .OnSlide("onSlideSlider")) 
     %><br /> 

我得到以下错误:

function Playimages() { 
    i = (i < sl - 1) ? (i + 1) : 0; 
    $('#Image1').attr('src', images[i].src); 
    $('#PSlice').val(i); 
} 

会感激你的建议:

Unexpected character '$' 
.Value((int[])$('#PSlice').val()) 

我从把文本字段的值。

+1

您是否试图在您的服务器端代码中运行JavaScript? – Musa

+0

我在视图中运行JavaScript。已经更新了这个问题。谢谢 – hncl

回答

0

Value不能是一个表达式。由于这基本上都是在客户端完成的,所以当使用一些JavaScript更新PSlice时,您需要更新滑块。

<input type="text" value="" id="PSlice" name="PSlice" /> 
<%= Html.Telerik().Slider<int>() 
     .Name("SliceSlider") 
     .HtmlAttributes(new { style = "color: white" }) 
     .TickPlacement(SliderTickPlacement.None) 
     .Max(100) 
     .Min(0) 
     .ClientEvents(events => events 
      .OnLoad("onLoadSlider") 
      .OnChange("onChangeSlider") 
      .OnSlide("onSlideSlider")) 
     %> 
<script type="text/javascript"> 
// some wireup on load... 
$(function() { 
    var sliceSlider = $('#SliceSlider').data('tSlider'); // get slider object 

    // set initial slider 
    $('#PSlice').on('change', function() { 
    sliceSlider.value($(this).val()); 
    }); 
}); 
</script> 
+0

谢谢,效果很好。 – hncl