簡體   English   中英

全局更改javascript變量的值

[英]Changing value of a javascript variable globally

我有一個頁面1.php,代碼在這里(只是一個克隆)

<?php
include '2.php'
?>
<script>
function rename(){
var x='renamedvalue';
}
</script>
<input type="button" onclick="return rename();">

和頁面2.php

<script>
var x ='somevalue';
</script>

我必須在第1頁上更改此變量onclick按鈕事件的值。

由於將2.php包含在1.php中,因此最終將只有一個頁面。 您可以像在2.php中那樣創建一個全局Javascript值,如下所示:

<script>
var x ='somevalue';
</script>

您在1.php中的問題就在這里:

var x='renamedvalue';

使用此代碼段,您將在重命名函數中重新定義名為x的變量。 要使用全局變量x,請更改上面的行以排除“ var”(它在rename()中重新聲明另一個局部值“ x”):

x='renamedvalue';

如果要在JS和PHP之間傳遞變量,它可能更易於使用:

<script>
function rename(){
    var x='renamedvalue';
    document.getElementById("x").value = x;
}
</script>
<form action="2.php" method="post">
<input type="hidden" value="" id="x" name="x">
<input type="button" onclick="return rename();">
</form>

使page2.php

<script>
var x ='<?php print $_POST["x"] ?>';
</script>

您將需要執行一些輸入清理操作,但是您知道了

在js函數外部定義變量使其變為全局變量,並允許在onclick事件上更改它們的值。

<?php
include '2.php'
?>
<script>
var x = ''; //global variable
function rename(){
x='renamedvalue';
}
</script>
<input type="button" onclick="return rename();">

您必須使用全局變量x

x='renamedvalue'而不是var x='renamedvalue'

暫無
暫無

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

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