我注意到facebook为每个元素都有随机元素ID - 包括没有唯一元素id的元素.
<div id="__w2_YvdN1r2_loading">blah</div>
Run Code Online (Sandbox Code Playgroud)
任何想法为什么他们在每个元素上做这个以及他们如何做到这一点?
我是编程的菜鸟,所以我很感激你那里有知识渊博的人的任何建议。我正在为网页编写一些 javascript,我需要将 javascript 打印到当前的 HTML 页面,最好是在我为此目的设置的 div 标签中。这是我到目前为止所拥有的:
<html>
<head>
<title>Tardy Reporting</title>
<script src="students.js" type="text/javascript">
</script>
</head>
<body>
<h1>Scan in Student ID</h1>
<form method="POST" name="idForm" onSubmit="getId(parseInt(document.idForm.studentId.value));">
<input type="text" name="studentId" id="studentId"/>
<input type="Submit" name="Submit" />
</form>
<div id="div1"></div>
<p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
和我的 JS 文件:
var studentNumberArray = [50011234, 50012345, 50013456];
var studentNameArray = ["Mike Simpson", "Greg Pollard", "Jason Vigil"];
var studentLastPeriodArray = ["George Washington", "Darth Vadar", "Obi Wan Kenobi"];
var tardyArray = [0, 0, 0];
function getId(studentId) {
for (i = …Run Code Online (Sandbox Code Playgroud) 我目前正在研究迁移到RichFaces 4.从我的JS,我必须使用DOM元素
document.getElementById('myParent:myElement').
Run Code Online (Sandbox Code Playgroud)
从JBoss迁移指南中,我了解到不能再使用"document.getElementById":https://community.jboss.org/wiki/RichFacesMigrationGuide33x-4xMigration-CommonComponentsChanges.
有人可以解释我为什么,我怎么能(简单地)将我对这个函数的所有调用 - 超过一千个 - 更改为其他东西?
谢谢.
这是我的一些代码...
$dom = new DomDocument;
$html = $newIDs[0];
$dom->validateOnParse = true;
$dom->loadHTML($html);
$dom->preserveWhiteSpace = true;
$tryID = $dom->getElementById('ID');
echo $tryID;
Run Code Online (Sandbox Code Playgroud)
我试图从一个网站上获取多个特定的ID,这仅显示一个,而且我在各处(包括在此处)都已经看到了这种方法,但是当我尝试打印出任何内容时,却没有任何显示。我尝试测试以查看它是否正在读取某些内容
if(!$tryID)
{
("Element not found");
}
Run Code Online (Sandbox Code Playgroud)
但它也从未打印出来。最后,我用过
echo $tryID->nodeValue;
Run Code Online (Sandbox Code Playgroud)
还是一无所有...有人知道我在做什么错吗?
另外,如果我确实可以正常工作,我可以在同一$ dom上以多种不同的方式读取不同的变量吗?如果这是有道理的。
有人可以解释document.getElementById("demo")下面的例子中的行吗?
我理解getElementById获取了demo的id,但id是在这段代码中<p id="demo"></p>究竟是<p id="demo"></p>做什么的?
document.getElementById("age") 很清楚,因为它获得了年龄的id作为输入.
function myFunction() {
var age,voteable;
age = document.getElementById("age").value;
voteable = (age < 18)? "Too young" : "Old enough";
document.getElementById("demo").innerHTML = voteable;
}Run Code Online (Sandbox Code Playgroud)
<p>Click the button to check the age.</p>
Age:<input id="age" value="18" />
<p>Old enough to vote?</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>Run Code Online (Sandbox Code Playgroud)
我需要使用 PHP 通过 ID 搜索元素,然后将 html 内容附加到它。这看起来很简单,但我是 php 新手,找不到合适的函数来执行此操作。
$html = file_get_contents('http://example.com');
$doc = new DOMDocument();
libxml_use_internal_errors(true);
$doc->loadHTML($html);
$descBox = $doc->getElementById('element1');
Run Code Online (Sandbox Code Playgroud)
我只是不知道下一步该怎么做。任何帮助,将不胜感激。
(不使用 JQuery)
为了正确地提出这个问题,我做了一个简单的例子,一个网站包含三个页面A、B和C。每个页面都链接到一个JavaScript文件。JavaScript文件链接在body标签的底部。以下是其中一个 html 页面的示例:
<html>
<head>
<title>Page A</title>
<link rel="stylesheet"
type="text/css"
href="temp.css">
</link>
</head>
<body>
<h1 id = "headingA">Page A</h1>
<button id="enterA">Enter</button>
<script src = temp.js>
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
除了“A”明显替换“B”和“C”之外,这三个页面看起来都很相似。
//this button is on page A
var btnA = document.getElementById("enterA");
btnA.onclick = function () {
"use strict";
window.console.log("Button A Pressed");
window.open("/pageB.html", "_self");
};
//this button is on page B
var btnB = document.getElementById("enterB");
btnB.onclick = function () {
"use strict";
window.console.log("Button B Pressed");
window.open("/pageC.html", "_self");
};
//this button is …Run Code Online (Sandbox Code Playgroud) 我已将内联脚本移至外部页面以符合内容安全策略。这是我需要解决的最后一个 CSP 问题。我需要帮助用事件侦听器替换两个按钮中的“onclick”。我已经进行了彻底的研究,但这些示例与我的代码有很大不同,我很难弄清楚。我对 JavaScript 很陌生。我有两个切换选项卡,单击时会显示定价。页面加载时,第一个选项卡默认打开。当我从按钮中删除“onclick”并将事件侦听器添加到我的 JS 文件中时,单击时选项卡将不再打开,并且默认打开也不起作用。我确信这很简单,但我希望能够帮助您在外部页面中格式化 Javascript,以使这些切换选项卡能够与 CSP 配合使用。
这是我的html:
<div class="tab">
<script type="text/javascript" src="/myExternalJavascript.js">
</script>
<button
class="tablinks"
onclick="openTerms(event, 'Weekly')"
id="button1">Click This
</button>
<button
class="tablinks"
onclick="openTerms(event, 'Monthly')"
id="button2">Click This
</button>
</div>
<div id="Weekly" class="tabcontent">Do something great.</div>
<div id="Monthly" class="tabcontent">Do something great.</div>
Run Code Online (Sandbox Code Playgroud)
这是我的外部 js 文件的内容(使用 w3 选项卡中的 javascript):
// Get the element with id="button1" and click on it
document.getElementById("button1").click();
function openTerms(evt, priceTerms){
// Declare all variables
var i, tabcontent, tablinks;
// Get all elements with class="tabcontent" and hide them
tabcontent …Run Code Online (Sandbox Code Playgroud) javascript onclick getelementbyid addeventlistener content-security-policy
我正在尝试使用nodejs从js文件中的html文件中按id获取元素。我收到错误“文档 ID 未定义”,因为节点默认不提供文档对象模型。
那么我如何在nodejs中使用document.getElementById()?
谢谢 !
我发现HTMLelement.innerText了我无法理解的这种奇怪的行为。下面是这个问题的一个例子:
// HTML
<div>
<article id="editor"></article>
</div>
// JavaScript
var editor = document.getElementById('editor');
console.log(editor.innerHTML); // prints "\n"
// From 3rd party libraries
var jqueryExample = jquery.parseHTML('<div><article></article></div>')[0];
console.log(jqueryExample.innerHTML); // prints ""
var angularjsExample = angular.element('<div><article></article></div>')[0];
console.log(angularjsExample.innerHTML); // prints ""
Run Code Online (Sandbox Code Playgroud)
正如你看到的,当我使用document.getElementById,元素的innerHTML具有\n某种原因。但是,如果我使用jquery.parseHTMLor angular.element,它不会添加\n并按原样返回。
如果 HTML 有更多内容,那就更有趣了:
// HTML
<div>
<article id="editor">
<h1>Test</h1>
<p>Foo</p>
</article>
</div>
// JavaScript
var editor = document.getElementById('editor');
console.log(editor.innerText); // prints "Test\nFoo"
Run Code Online (Sandbox Code Playgroud)
但是jquery.parseHTML和angular.element的 …