2014-05-16 51 views
0

比方說,我有一個變量在一個PHP文件(的index.php):通行證PHP變量.js文件(jQuery的)

$PHP_variable = "string"; 

,我想將它傳遞給我的JS文件(功能。 JS)目前正在讀取的PHP文件。那可能嗎?

例如,我有這個在我的PHP文件:

<input type="text" name="textfield" value="'.$PHP_variable.'" /> 
<input type="button" id="actionButton" /> 

而且在js文件:

$('#actionButton').click(function(){ 
alert(THE_PHP_VARIABLE); 
}); 

怎麼可能到$通過PHP_variable JS文件?我不想直接在php腳本上使用js代碼(我知道如何以這種方式解決問題)。

+1

您有一個XSS漏洞。 – SLaks

+0

在提出問題之前,請使用[搜索引擎](http://google.com)。 – Anonymous

+0

@SLaks我知道,但數據不需要以任何方式保護。 – user2994294

回答

0

聽起來你正在考慮使用PHP來生成Javascript,儘管這有點奇怪,但這是可能的。它也很好奇,你真的沒有傳遞變量,你正在使用它來呈現相同值的JavaScript變量。

相反,我覺得你真的想要做的就是用JS讀取HTML元素的value屬性的變量,因爲你已經存儲變量的值存在。

這是可以做到了很多辦法,但因爲它看起來像你使用jQuery它會僅僅是:

$('#actionButton').click(function(){ 
    $value = $this.attr('value'); 
    alert($value); 
}); 
+0

#actionButton沒有屬性'值'。當你有錯誤時:$這不起作用,你的意思可能是$(this) –

0

你幾乎沒有 -

$('#actionButton').click(function(){ 
    var THE_PHP_VARIABLE = $('input[name="textfield"]').val(); 
    alert(THE_PHP_VARIABLE); 
}); 

由於值在頁面加載時被回顯,通過在正確的元素上使用val()可以很容易地得到該值。

如果你想賦值的變量在加載頁面時,你也可以做到這一點在你的PHP的時間 -

<script type="text/javascript"> 
<?php 
    echo "var THE_PHP_VARIABLE = " . $PHP_variable .";"; 
?> 
</script> 
0

感謝所有的答案,我選擇使用一個隱藏的輸入字段的ID和php變量作爲這個輸入的值,那麼在js文件中,我只需從該隱藏輸入中獲取val()

$input_val = $('#hiddenInputID').val();