简体   繁体   English

使用JavaScript将值存储在变量中

[英]Store value in a variable with Javascript

I'm a JS novice so be gentle. 我是JS新手,所以要谦虚。

I am working on a simple script that reads a value from another web page on my local Intranet. 我正在研究一个简单的脚本,该脚本从本地Intranet上的另一个网页读取值。

Intranet Home Page (index.php): 内联网首页(index.php):

<div id="username">my.username</div>

script.js: 的script.js:

$(document.body).load('http://intranet/index.php #username');

Now, I was wondering, instead of just displaying this value, how do I store it in a variable? 现在,我想知道,不只是显示此值,而是如何将其存储在变量中?

You want to query it with ajax, then parse that HTML, then find that element in the parsed HTML and extract its text: 您想要使用ajax查询它,然后解析该HTML,然后在解析的HTML中找到该元素并提取其文本:

$.ajax({
    url: 'http://intranet/index.php',
    success: function(html) {
        var nodes = $.parseHTML(html);
        var username = $("<div>").append(nodes).find("#username").text();
        console.log(username);
    }
});

Here's an example of the parsing/finding part using a static HTML string: 这是使用静态HTML字符串的解析/查找部分的示例:

 var html = '<html><body><div>foo<div id="username">my.username</div></div></body></html>'; var nodes = $.parseHTML(html); var username = $("<div>").append(nodes).find("#username").text(); console.log(username); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

Or without the wrapper div : 或者没有包装器div

 // Test finding it nested test('<html><body><div>foo<div id="username">my.username</div></div></body></html>'); // Test finding it top-level test('<div>foo</div><div id="username">my.username</div><div>bar</div>'); function test(html) { var username = null; $.parseHTML(html).some(function(node) { if (node.id === "username") { username = $(node).text(); return true; } node = $(node).find("#username"); if (node[0]) { username = node.text(); return true; } }); console.log(username); } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

You can see why I used the wrapper div . 您可以看到为什么使用了wrapper div :-) :-)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM