$(document).ready(function(){
$('.selector').click(function(){
<?php
// php code goes here
?>
});
});
這會帶來問題或減慢頁面?這是不好的做法嗎?有什麼重要的,我應該知道這一點?
謝謝!
$(document).ready(function(){
$('.selector').click(function(){
<?php
// php code goes here
?>
});
});
這會帶來問題或減慢頁面?這是不好的做法嗎?有什麼重要的,我應該知道這一點?
謝謝!
如果您試圖用點擊事件綁定一些PHP代碼,那麼這是不可能的,您嘗試的方式和PHP代碼將立即執行頁面加載而無需等待點擊事件。
如果您試圖使用PHP生成最終的JavaScript或jQuery代碼,那麼這是好的。
謝謝,我認爲這是直截了當的,並得到了重點。謝謝。希望我可以查看所有答案 – hellomello
當我這樣做時出現錯誤。它不再被允許嗎?我只是試圖包含一個基於if語句的行(如果$ _SESSION ['somevar'] == 1) –
當然,只要你記住PHP代碼將在頁面發出之前由服務器執行。除此之外,玩得開心。
不,它不是。就像你知道在解析PHP頁面後執行JS一樣。
PHP在服務器上執行,然後JavaScript將在客戶端上執行。所以你會在這裏做的是使用PHP來生成JavaScript,將成爲函數體。如果這就是你想要做的事情,那麼這樣做沒有問題。
如果你認爲你打算從JavaScript調用一些PHP代碼,那麼你就錯了。您需要將PHP代碼放在單獨的頁面中,並使用ajax請求來獲取結果。
它不會減慢頁面; PHP在服務器上運行併發送發送到瀏覽器的文本,就像在任何PHP頁面上一樣。這是不好的做法嗎?我不會說「壞」,但不是很好。它使混亂的代碼 - 在我需要做這樣的事情時,我通常會嘗試打破它,如:
<script>
var stuff = <?php print $stuff; ?>;
var blah = "<?php print $blah; ?>";
// Do things in JS with stuff and blah here, no more PHP mixed in
</script>
不錯...... !!!!!!!!!!!!! – Ehsan
PHP是一個「後臺」語言和JavaScript是一種「前端」語言。簡而言之,只要PHP代碼通過了解PHP的Web服務器加載 - 缺點是必須內聯JS,失去緩存能力(有解決方法可以在.js文件中解析php,但不應該真的做這個)。對用戶來說,它只會看起來像JavaScript和HTML。以下是服務器訂單:
只要確定PHP正在輸出有效的JavaScript。
你有更好的選擇,使用運行時您正在處理一個click事件
$(document).ready(function(){
$('.selector').click(function(){
$.ajax({url:"phpfile.php",type:"POST",
data:"datastring="+value+"&datastring2="othervalue,
,success:function(data){
//get the result from the php file after it's executed on server
}
});
});
});
嘿,這正是我需要的! – pattyd
謝謝你們的PHP腳本AJAX!你們都快!我現在知道了! – hellomello