Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何在视图的列表框中创建选定项_Jquery_Asp.net - Fatal编程技术网

Jquery 如何在视图的列表框中创建选定项

Jquery 如何在视图的列表框中创建选定项,jquery,asp.net,Jquery,Asp.net,我在aspx页面中有一个列表框。加载页面时,我在隐藏字段上设置locationID,并在列表框上设置为选中。因为列表框中有很多项。我想在页面未回发时在视图上显示所选项目。但是,scrollintoview仅适用于元素。我在网上找到了一些例子,但是上面显示了。我的代码不起作用。有人能告诉我如何在视图上显示所选项目吗。提前谢谢 这是我的jquery代码: <script type="text/javascript"> $(document).ready(scroll

我在aspx页面中有一个列表框。加载页面时,我在隐藏字段上设置locationID,并在列表框上设置为选中。因为列表框中有很多项。我想在页面未回发时在视图上显示所选项目。但是,scrollintoview仅适用于元素。我在网上找到了一些例子,但是上面显示了。我的代码不起作用。有人能告诉我如何在视图上显示所选项目吗。提前谢谢

这是我的jquery代码:

<script type="text/javascript">  

        $(document).ready(scrollLocation);

        function scrollLocation() {
          var offset = 0;
            var selectedIndex = $("#listLocation")[0].selectedIndex;
            alert(selectedIndex);
            $("#listLocation option").each(function (i, e) {
                if (i == selectedIndex) return false;
                offset += $(e).height();
            });
            $("#listLocation").scrollTop(offset);

        }  
</script>  

$(文档).ready(滚动位置);
函数scrollLocation(){
var偏移=0;
var selectedIndex=$(“#listLocation”)[0]。selectedIndex;
警报(选择索引);
$(“#列表位置选项”)。每个(函数(即,e){
如果(i==selectedIndex)返回false;
偏移量+=$(e).高度();
});
$(“#listLocation”).scrollTop(偏移量);
}  

不要使用
offset()
而是将
选项的
高度
s累加到所选高度,然后
滚动()。这是小提琴:

HTML

<select id="s1" size="5">
    <option value='1'>1<option>
    <option value='2'>2<option>
    <option value='3'>3<option>
    <option value='4'>4<option>
    <option value='5'>5<option>
    <option value='6'>6<option>
    <option value='7'>7<option>
    <option value='8'>8<option>
    <option value='9' selected='selected'>9<option>
    <option value='10'>10<option>  
    <option value='11'>11<option> 
    <option value='12'>12<option> 
    <option value='13'>13<option> 
    <option value='14'>14<option> 
    <option value='15'>15<option> 
</select>

谢谢我把你的代码放进了我的函数里。但是,所选项目不在视图中。我必须向下滚动才能看到它。我是否误解了您的代码?我发出警报以显示偏移量的值。是0
$(function(){
    var offset = 0;  

    // Find the selected index
    var selectedIndex = $("#s1")[0].selectedIndex;
    $("#s1 option").each(function(i,e){             
        // if this is the selected one, stop
        if(i==selectedIndex) return false;
        // otherwise add up
        offset += $(e).height();    
    });    

    $("#s1").scrollTop(offset);
});