Javascript - Установить исходный файл и присвоить значение элементу управления - PullRequest
0 голосов
/ 08 октября 2010

У меня динамическое построение элемента управления в виде дерева.Я хочу изменить цвет выбранного узла. Один поможет мне написать скрипт, приведенный ниже.и все работает нормально.

 <script type="text/javascript"  src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
    google.load("jquery", "1.4.2");
    google.setOnLoadCallback(function() {
        //change cursor to hand when user mouseover tree nodes
        $(".TreeView1_0").mouseover(function() {
            $(this).css('cursor', 'pointer');
        });


        //unbold all nodes then bold the selected node to indicate it's selected
        $(".TreeView1_0").click(function() {
            $(".TreeView1_0").css('font-weight', 'normal');
            $(".TreeView1_0").css('color', 'black');
            $(".TreeView1_0").css('background-color', 'white');


            $(this).css('color', 'white');

            $(this).css("background-color", "blue");

        });
    });
</script>

Теперь я хочу изменить исходный файл на файл js, сохраненный в папке сценария. И сохранить индекс и значение выбранного узла в скрытых полях. У меня есть исходный файл JQuery1.4.1.js в папке скриптов.Я не знаю, каков точный способ ссылки на этот файл JS.и я не знаю, как получить индекс и значение выбранного узла

я изменил код, чтобы сделать это. весь код aspx показан ниже

<% @ Page Language = "C #" AutoEventWireup ="true" CodeFile = "Default.aspx.cs" Inherits = "_ По умолчанию"%>

   <script type="text/javascript" src="../../Scripts/JQuery1.4.1.js"></script>
  <script type="text/javascript">


        //change cursor to hand when user mouseover tree nodes
        $(".TreeView1_0").mouseover(function() {
            $(this).css('cursor', 'pointer');
        });


        //unbold all nodes ,then bold the selected node to indicate it's selected ,and store  selected node index and value to two hidden fields
        $(".TreeView1_0").click(function() {
            $(".TreeView1_0").css('font-weight', 'normal');
            $(".TreeView1_0").css('color', 'black');
            $(".TreeView1_0").css('background-color', 'white');
            $(this).css('color', 'white');
            $(this).css("background-color", "blue");

          // i am not sure about the two lines of code given below
            document.getElementById('hfvalue').value = $(this).value;
            document.getElementById('hfindex').value =$(this).index;

            $(this).css('color', 'white');

            $(this).css("background-color", "blue");

        });

</script>

<form id="form1" runat="server">
<div>
    <asp:TreeView ID="TreeView1" runat="server">
    </asp:TreeView>
</div>
<p>
    <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
    <asp:HiddenField ID="hfvalue" runat="server" />
    <asp:HiddenField ID="hfindex" runat="server" />
</p>
</form>

Нокод не работает.я новичокЛюбые предложения

1 Ответ

1 голос
/ 08 октября 2010

Полагаю, сначала нужно внести небольшое изменение в ваш скрипт.Изучите следующий фрагмент для использования document.ready -

$ (document) .ready (function () {

   //change cursor to hand when user mouseover tree nodes

   $(".TreeView1_0").mouseover(function() {

       $(this).css('cursor', 'pointer');

   });

   //unbold all nodes ,then bold the selected node to indicate it's selected ,and store  selected node index and value to two hidden fields

   $(".TreeView1_0").click(function() {

       $(".TreeView1_0").css('font-weight', 'normal');

       $(".TreeView1_0").css('color', 'black');

       $(".TreeView1_0").css('background-color', 'white');

       $(this).css('color', 'white');

       $(this).css("background-color", "blue");

     // i am not sure about the two lines of code given below

       document.getElementById('hfvalue').value = $(this).value;

       document.getElementById('hfindex').value =$(this).index;

       $(this).css('color', 'white');

       $(this).css("background-color", "blue");

   });

});

Также, пожалуйста, убедитесь, что скрипт jquery выбран правильно, и путь, который вы используете, является подходящим.Простой способ убедиться в этом - ввести следующую строку в адресную строку и посмотреть, показывает ли предупреждение функцию

javascript: alert ($)

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