我正在尝试从一个从javascript更新的文本字段更新Telerik MVC滑块的值。这是Telerik脚本:
<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 />
我收到以下错误:
Unexpected character '$'
.Value((int[])$('#PSlice').val())
我把文本字段的值放在:
function Playimages() {
i = (i < sl - 1) ? (i + 1) : 0;
$('#Image1').attr('src', images[i].src);
$('#PSlice').val(i);
}
非常感谢您的建议。
答案 0 :(得分: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>