簡體   English   中英

jQuery 從另一個 html 頁面獲取變量值

[英]jQuery get variable value from another html page

我有一個包含此內容的 html 頁面,稱為“page1.html”:

<div>
    <div id="content">
        content
    </div>
    <script type="text/javascript">
        var x=5;
        var y=2;
    </script>
    <div id="other">Some other content</div>
</div>

在另一個 html 頁面中,我想獲取變量“x”(5) 的值。 這是主頁:

<!DOCTYPE html>
<html>
<head lang="en">
    <script type="text/javascript" src="app.js"></script>
</head>
<body>
    <div id="new_content"></div>
</body>
</html>

這是 app.js 腳本:

$(function(){
    $.get('page1.html', function(result){
        var obj = $(result).find('script');
        $(this).append($('#new_content').text(obj.html()));
    });
});

結果是“var x=5; var y=2;”。 有沒有辦法只從 var x 中獲取值 5?

謝謝您的幫助。

編輯:我忘了寫這只是一個例子,page1.html 腳本中的代碼比顯示的更復雜。 app.js 中的對象“obj”是一個 [object htmlscriptelement],所以我想知道是否存在可用於直接訪問 var x 的方法/att。

或者,您可以通過以下方式簡單地使用localStorage

page1.html

localStorage.setItem("x", "value"); //setter

page2.html

var x = localStorage.getItem("x"); //getter

您可以在粘貼以下代碼之前嘗試注釋va y = ...行:

$(function(){
    $.get('page1.html', function(result){
        var obj = $(result).find('script');
        $(this).append($('#new_content').text(obj.html().replace('var y','//var y')));
    });
});

嘗試去做似乎有點奇怪。

我會盡力回答,但是最好能找到更多有關為什么要這樣做的背景信息,因為這樣做可能會有更好,更清潔的方法。

我對您提供的信息的建議是將值分配給DOM對象,jQuery的構建目的是遍歷DOM並對其進行操作,嘗試解析原始javascript來提取變量值並不是一個好主意。

因此,第1頁如下所示:

<div>
    <div id="content">
        content
    </div>
    <div class="myData" data-x="5" data-y="2" />
    <div id="other">Some other content</div>
</div>

然后我的jQuery將如下所示:

$(function(){
    $.get('page1.html', function(result){
        var obj = $(result).find('script');
        var page1X = $(result).find('div.myData').data('x');
        var page1Y = $(result).find('div.myData').data('y');
    });
});

這只是偽代碼,但希望您能理解。

參考鏈接:

從另一個 html 頁面獲取值,例如 page1

<input type="text" id="pageoneinputid" value="pageone">

在腳本標簽的第二頁

var a=$("#pageoneinputid").val()
document.getElementById("pagetwoinputid").innerHtml=a;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM