Пользовательский элемент управления asp.net scroolIntoView прокручивает всю страницу - PullRequest
0 голосов
/ 15 ноября 2010

Я там

Я использую пользовательский элемент управления asp.net с представлением в виде дерева.Когда я загружаю страницу, я хочу прокрутить пользовательский элемент управления до выбранного узла в виде дерева.Я использую функцию JS .ScrollIntoView (true).Но это прокрутка всей страницы (не только того, что находится внутри пользовательского элемента управления)

вот мой код

//js
function ScroolToFirstSelectedCheckBox(ctrlId) {

    Event.observe(window, 'load', function() {
        var tree = document.getElementById(ctrlId + '_MyTreeView');

        var checkBoxes = tree.getElementsByTagName("input");
        var checkBoxesCount = checkBoxes.length;
        for (var i = 0; i < checkBoxesCount; i++) {
            if (checkBoxes[i].checked) {
                checkBoxes[i].scrollIntoView(true);
                break;
            }
        }
    }
    );
}

//aspx.cs
 Page.ClientScript.RegisterClientScriptBlock(this.GetType(), 
                                             "ScrollToSelectedCheckBox", 
                           string.Format("ScroolToFirstSelectedCheckBox('{0}')", 
                           this.UniqueID), 
                           true);

Как сохранить положение прокрутки родительской страницы, но продолжать устанавливать пользовательский контрольположение, где я хочу?

Tks

1 Ответ

0 голосов
/ 15 ноября 2010

хорошо, просто изменили

checkBoxes[i].scrollIntoView(true);

с

checkBoxes[i].scrollIntoView(false);

Вот и все !!!

= P

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...