[英]get Javascript / Browser rendered elements on serverside with PHP
[英]How to get serverside information into javascript?
我不知道如何問這個問題,這就是為什么我要模擬我需要的東西,一些開發人員通過用php渲染javascript來滿足我的需求。 一個簡單的示例文件如下所示:
my_javascript_file.php
<?php include "my_class.php"; ?>
$(document).ready(function(){
$.ajax({
url: "<?php $my_obj->post_url(); ?>",
success: function(){
alert("Post successful")
}
});
};
輸出以下內容:
$(document).ready(function(){
$.ajax({
url: "/post_handler.php",
success: function(){
alert("Post successful")
}
});
};
我的問題到了,有沒有辦法用純js技術來實現?
謝謝,思南。
PS這只是一個簡單的例子,當然我可以在此處硬編碼發布網址,或使用javascript通過location對象獲取網址,希望您能理解我的意思...
編輯:很抱歉,我所使用的術語令人困惑,它只是從我的應用程序中獲取一些信息並動態地寫入我的JavaScript。 我不是說彗星或數據編碼等。
我想知道的是如何在javascript文件上使用服務器端數據(如果有的話)。 就像php方法在我的示例中所做的一樣,它只是回顯來自我的應用程序的字符串。 有沒有辦法通過javascript庫或框架來執行此操作,例如您可以為模板引擎分配vars並在該模板系統中使用它。 希望現在更加清楚。
================編輯:新的潛在答案=====================
假設您設法從服務器檢索JavaScript數據對象,是否要注入在HTML標記中從客戶端獲得的JavaScript數據?
如果是這樣,您可以查看IBDOM: http ://ibdom.sf.net/
我寫了它,幾年來我們已經在許多站點上生產了它。
=================下面的舊答案====================
因此,您希望“ eventData”成為“某種東西”,JavaScript可以使用它。
我建議先看看PHP中的JSON:
[已刪除不需要PHP中的JSON鏈接]
然后您的PHP代碼可能類似於:
<?php include "my_class.php"; ?>
$(document).ready(function(){
$.ajax({
url: "<?php $my_obj->post_url(); ?>",
data: <?php json_encode ($my_obj->getData()); ?>,
success: function(){
alert("Post successful")
}
});
};
因此,這里的想法是,“ data:”字段的值將成為由PHP在服務器上生成的JSON對象圖。
是的,有辦法,但是很奇怪。 您可以使用jaxer服務器 。 它使您可以在服務器上運行javascript。
編輯:
正如我在評論中所說,我不希望您為了實現模板引擎而將額外的js下載到客戶端。 您正在談論的可能是分離或分離。 在這種情況下,您可以在單獨的js文件中包含以下內容:
var myObject = {
var1 : '',
var2 : 0,
init : function(options) {
var1 = options.var1;
var2 = options.var2;
$('#someElem').click(function() {
// do stuff
return false;
};
}
};
然后從您的html頁面中這樣調用它
<head>
<script type="text/javascript">
var options = {
var1 : <?php echo "hello" ?>,
var2 : <?php echo 1 ?>
}
myObject.init(options);
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.