【问题标题】:how to pass Id to javascript dynamically如何将Id动态传递给javascript
【发布时间】:2011-06-22 09:21:02
【问题描述】:
function jsarea3() { document.getElementById("Txtarea3").title = document.getElementById("Txtarea3").value; }
function jsarea4() { document.getElementById("Txtarea4").title = document.getElementById("Txtarea4").value; }
function jsarea5() { document.getElementById("Txtarea5").title = document.getElementById("Txtarea5").value; }

上面的代码是在鼠标悬停时在文本框区域显示数据。 如您所见,所有 3 个函数的运行代码都相同,区别仅在于 ID 如何动态传递 ID 就像我可以将内部代码用作所有 3 的函数以及如何使用它

像下面给出的代码这样的代码呢

$('#button1').focus(function () {
      $('#button1', window.parent.document).css("background-color", "#fcc63b"); 
    }
});

【问题讨论】:

    标签: javascript html asp.net-mvc model-view-controller asp.net-mvc-2


    【解决方案1】:

    如果你使用 jquery,你可以像这样选择你的 textareas

    $("textarea").focus(function(){
    this.title = $(this).val();
    
    });
    

    您可以将选择器指定为更特定于您要操作的项目 当您的 textarea 获得焦点时,该功能将运行 看看 jquery,它可以简化你的代码

    【讨论】:

      【解决方案2】:

      由于您使用相同的元素标题和值,您可以存储一个引用而不是搜索它两次..

      function jsarea(anId) { 
        var elem = document.getElementById(anId);
        elem.title = elem.value;
      }
      

      您可以使用jsarea('Txtarea3'); 调用它

      对于第二个代码,它是 jQuery 代码,它似乎改变了与在父窗口中获得焦点的按钮具有相同 id 的按钮的背景颜色(当您使用 iframe 时 )

      【讨论】:

        【解决方案3】:

        您可以使用单个函数,该函数接受一个参数,该参数表示您希望引用的元素的id

        function jsarea(elementId) {
            document.getElementById(elementId).title = document.getElementById(elementId).value;
        }
        

        如果你想用id“Txtarea3”影响元素,你可以像jsarea("Txtarea3");一样调用它。

        【讨论】:

          【解决方案4】:

          使用参数。

          另外,你应该看看 jQuery——它确实可以简化 DOM 操作代码。

          【讨论】:

            【解决方案5】:
            function jsarea(number) { document.getElementById("Txtarea" + number).title = document.getElementById("Txtarea" + number).value; }
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2012-05-11
              • 1970-01-01
              • 2019-04-03
              相关资源
              最近更新 更多