标签: getelementbyid

document.getElementById()VS. 的getElementById()

我通常通过执行以下操作来为某些事件注册javascript函数:

myBtn.Attributes.Add("onClick", "Validate(getElementById('"+txtFirstName.ClientID + "'));");
Run Code Online (Sandbox Code Playgroud)

我总是单独使用getElementById,或者换句话说,没有文件可以使用它.但是当我尝试使用getElementById而不是使用时,我最近打破了页面document.getElementById.为什么是这样?奇怪的是,我有一个网站,其中一个页面允许我只使用getElementById,但另一个页面抛出一​​个javascript错误,因为它无法找到该元素,如果我只是getElementById,它只会工作,如果我这样做document.getElementById.

有谁知道这是为什么?我是否应该在document.getElementById任何地方使用,无论它是否在没有文档前缀的情况下工作?

编辑:它可能与一个页面使用AJAX而另一个页面不是这样的事实有关吗?

javascript getelementbyid

3
推荐指数
1
解决办法
1万
查看次数

document.getElementById(variable)帮助!

我知道它可以完成,但我遇到了让它运转的问题.基本上我想根据每天更改的变量更改特定表格单元格的字体颜色,实际上突出显示日历中的星期几.我知道变量可以用来获取元素id,但我在这里缺少什么?我尝试在每个单元格中使用唯一的DIV,但得到相同的错误 - "需要对象".提前致谢.这是代码:

<style>
Run Code Online (Sandbox Code Playgroud)

td#day1 {color:white;} td#day2 {color:white;} td#day3 {color:white;} td#day4 {color:white;}等.

<script type="text/javascript">
function calculate_date(){
    currentTime = new Date();
    day = currentTime.getDate();
    return day;
    }
function highlight_day() {
    calculate_date(); 
    today = 'day'+ day;
    document.getElementById(today).style.color= "red";
    }
document.onload(highlight_day());
</script>
</head>
<body>
SEPTEMBER
<table class="cal">
<tr>
<td id="day1">1</td><td id="day2">2</td><td id="day3">3</td><td id="day4">4</td>
Run Code Online (Sandbox Code Playgroud)

javascript getelementbyid

3
推荐指数
2
解决办法
1万
查看次数

Javascript document.getElementById似乎不起作用

我有以下代码,并且chrome中的javascript控制台说"无法读取null的innerHTML属性.为什么document.getElementById('display')空出来?

<!DOCTYPE html>
<html>
    <head>
        <title>Chat 3</title>
        <script type="text/javascript">
            function showmsg(str){
                var display = document.getElementById('display');
                display.innerHTML += "<p>" + str + "</p>";
            }

            if("WebSockets" in window){
                pass;
            }else{
                showmsg("Your browser doesn't support WebSockets. Try Google Chrome.");
            }
        </script>

        <style type="text/css">
        #username { 
            padding: 0px;
            margin: 0px;
            height: 26px;
            width: 400px;
        }

        /* ADDED container div that wraps onlineusers and display */
        #container {
          margin: 10px 0;
        }

        /* use float: left to put them side-by-side */
        #display { 
            padding: 0px; …
Run Code Online (Sandbox Code Playgroud)

javascript getelementbyid

3
推荐指数
2
解决办法
8414
查看次数

当document.getElementById()没有?

我有一些JavaScript从HTML文档中通过ID获取元素.

在一个特定场景中,document.getElementById(idString)方法在IE8兼容模式下返回null,但是jQuery等效方法有效.我需要弄清楚为什么原生呼叫不起作用.

这是一个例子:

var myId = "e_" + someId;
var myNativeDiv = document.getElementById(myId);
var myjQueryDiv = $("#" + myId);
alert(myNativeDiv + " - " + myjQueryDiv); // alerts "null - [Object object]"
Run Code Online (Sandbox Code Playgroud)

我已检查myId过该文档中的唯一内容.

任何调查途径都值得赞赏.


更新 - 实际上,myjQueryDiv也是空的,但我想jQuery使它不为空.但是,调用parentDom.find("#" + myId);确实返回了正确的元素,其中parentDom是我需要查找的元素的祖先.

javascript jquery getelementbyid

3
推荐指数
1
解决办法
1986
查看次数

getElementsByClassName> get children

我有这个HTML代码:

<div id="channels_0">
   <div id="channels">
      <h4 class="date"><span id="date">Sat 22nd Sep</span> @ 
      <span id="time">12:45</span></h4>
      <h3 class="teems"><span id="date">Swansea City v Everton </span></h3>
      <h4 class="tv"><span id="mychannels"></span>Sky Sports 2/Sky Sports 2 HD</h4>
   </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我有这个JS:

document.getElementById('channels').innerText)
Run Code Online (Sandbox Code Playgroud)

哪个输出:

Sat 22nd Sep @ 12:45
Swansea City v Everton
Sky Sports 2/Sky Sports 2 HD
Run Code Online (Sandbox Code Playgroud)

我如何得到一个句柄并输出单个项目,如:mychannels,或teems或时间或日期,即我需要得到孩子,这是怎么做到的?

我试过了:

document.getElementById('channels').getElementsByTagName('date').value; 
Run Code Online (Sandbox Code Playgroud)

document.getElementsByClassName('date').value;
Run Code Online (Sandbox Code Playgroud)

和其他人一样,但似乎无法掌握它.

javascript dom getelementbyid

3
推荐指数
2
解决办法
2万
查看次数

php xml dom getElementById和DOMXpath查询无法获取元素

我在使用函数替换XML文件中的问题和答案元素时遇到了一些问题.我做了很多研究学习php dom,但是我正忙着制作这个功能.问题是当我试图通过属性id获取父元素行时它返回null或当我使用xpath时它返回一个空对象.我得到正确的父元素后,我不知道该函数是否正常工作,但这是我认为的下一步.

我的XML看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <row id="1">
    <question>Wat doet de vuilnisman?</question>
    <answer>Hij tilt de vuilnisbak in de vuilnisauto.</answer>
  </row>
  <row id="2">
    <question>Wat zegt de tandarts vaak?</question>
    <answer>U mag nu spoelen.</answer>
  </row>
</root>
Run Code Online (Sandbox Code Playgroud)

和我的PHP功能:

//modifies rows
function modifyRows($file, $rowIds, $rowText) {
    $xmlDoc = new DOMDocument();
    $xmlDoc->preserveWhiteSpace = false;
    $xmlDoc->formatOutput = true;   
    $xmlDoc->load($file);
    foreach($rowIds as $rowId) {
        $parent = $xmlDoc->getElementById($rowId);
        for($i=0;$i<count($rowText);$i++) {
            $newQ = $xmlDoc->createElement('question');
            $qText = $xmlDoc->createTextNode($rowText[$i]);
            $qText = $newQ->appendChild($qText);
            $newA = $xmlDoc->createElement('answer');
            $aText = $xmlDoc->createTextNode($rowText[$i++]);
            $aText = $newA->appendChild($aText); …
Run Code Online (Sandbox Code Playgroud)

php xml getelementbyid domdocument domxpath

3
推荐指数
1
解决办法
4165
查看次数

使用VBA循环遍历多个div

我试图使用Vb脚本从HTML页面中提取信息.这是我试图提取信息的HTML页面.

<div id="profile-education">

  <div class="position  first education vevent vcard" id="xxxxxx">
  University 1
  <span class="degree">Ph.D.</span>
  <span class="major">Computer Science</span>
  <p class="period">
  <abbr class="dtstart" title="2005-01-01">2005</abbr> &#8211; <abbr class="dtend" 
  title="2012-12-31">2012</abbr>
  </div>          

  <div class="position  education vevent vcard" id="xxxxxx">  
  University 2                  
  <span class="degree">M.Eng.</span> 
  <span class="major">Computer Science</span>
  <p class="period">
  <abbr class="dtstart" title="2000-01-01">2000</abbr> &#8211; <abbr class="dtend" 
  title="2004-12-31">2004</abbr>
  </p>
  </div>

</div>
Run Code Online (Sandbox Code Playgroud)

我想以下面的格式提取信息.

  • 大学名称:大学1
  • 学位名称:博士学位
  • 专业:计算机科学
  • 时间:2005年 - 2012年

  • 大学名称:大学2

  • 学位名称:M.Eng
  • 专业:计算机科学
  • 时间:2000年至2004年

在我的VB脚本中,我有以下代码,它将整个信息作为单个变量提取.

Dim openedpage as String
openedpage = iedoc1.getElementById("profile-education").innerText
Run Code Online (Sandbox Code Playgroud)

但是,如果我在我的vb脚本中使用以下语句,我可以获得特定的跨度信息.

openedpage = iedoc1.getElementById("profile-education").getElementsByTagName("span")
(0).innerText
Run Code Online (Sandbox Code Playgroud)

上面的代码给出了Phd作为输出.但是,我事先不会知道总跨度,因此我不能简单地在代码中给出span(0)和span(1).另外,我想提取所有div标签的信息,我也不会知道这些信息.基本上,我想要一些循环结构来迭代div标签和id profile-education,从中我应该能够提取多个div和span信息.

html vba dom getelementbyid getelementsbyname

3
推荐指数
1
解决办法
2万
查看次数

我怎样才能按类而不是"GetElementById"获取元素?

所以,这是代码:

<a id="link" href="https://url.com/">URL:</a>
<input id="value"/>

<script type="text/javascript">
    var link= document.getElementById('link');
    var input= document.getElementById('value');
    input.onchange=input.onkeyup= function() {
        link.search= 'extendurl/'+encodeURIComponent(input.value);
    };
</script>
Run Code Online (Sandbox Code Playgroud)

这是有效的,但我需要使用类而不是ID.我试试这个:

<script type="text/javascript">
    var link= document.getElementByClassName("link")[0];
    var input= document.getElementByClassName("value")[0];
    input.onchange=input.onkeyup= function() {
        link.search= 'extendurl/'+encodeURIComponent(input.value);
        link.firstChild.data= link.href;
    };
</script>

<a class="link" href="https://url.com/">URL:</a>
<input class="value"/>
Run Code Online (Sandbox Code Playgroud)

我不知道为什么,但这不起作用.

有人?

javascript getelementbyid getelementsbyclassname

3
推荐指数
1
解决办法
2万
查看次数

来自另一页的getElementById

我试图divgetElementById不使用AJAX或jQuery的情况下从一个网页URL到另一个网页并以纯文本显示,因为我要在FitNesse中实现它。有没有办法传递URL?

html javascript fitnesse getelementbyid

3
推荐指数
2
解决办法
2万
查看次数

如何在JavaScript中选择某个元素的最后一个元素

<select>我的页面中有几个元素.有没有简单的方法可以选择最后一个?这给我带来了第一个:

document.getElementById("myList")
Run Code Online (Sandbox Code Playgroud)

更新:

对不起,错误的用法getElementById.让我改变我的问题:如何使用某个元素访问最后一个元素getElementsByTagName

document.getElementsByTagName("select")

javascript dom getelementbyid css-selectors selector

3
推荐指数
3
解决办法
5067
查看次数