[英]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.