在我的一個頁面上有簡單的代碼(見下文),在客人登錄後他們返回到主頁面,他們應該會遇到一個彈出式小模式謝謝你的留言。 在這方面嘗試了多重變化,但沒有工作,這應該是一個ABC,因爲它不工作?通過php/javascript打開模態
<?php if(isset($thx) === 'Y'){?>
<script type="text/javascript">
$('#\\#thx').modal('show');
</script>
<?php } ?>
在我的一個頁面上有簡單的代碼(見下文),在客人登錄後他們返回到主頁面,他們應該會遇到一個彈出式小模式謝謝你的留言。 在這方面嘗試了多重變化,但沒有工作,這應該是一個ABC,因爲它不工作?通過php/javascript打開模態
<?php if(isset($thx) === 'Y'){?>
<script type="text/javascript">
$('#\\#thx').modal('show');
</script>
<?php } ?>
將JQuery腳本包裝在文檔中準備就緒。
$(document).ready(function() {
$('#\\#thx').modal('show');
});
在文檔「準備就緒」之前,不能安全地操作頁面。 jQuery爲您檢測到這種狀態。包含在$(document).ready()
中的代碼只有在頁面文檔對象模型(DOM)準備好要執行JavaScript代碼時纔會運行。
嘗試它已經沒有效果,感謝回答 –
你必須使用
$(document).ready(function(){
//your code here
})
這將運行功能時,頁面加載。
已經嘗試過,謝謝回答 –
請將您的模態html添加到問題中。 –
試試這個:
<?php if(isset($thx) == "Y"){?>
<script type="text/javascript">
$(document).on('ready',function({
$('#thx').modal('show', true);
});
</script>
<?php } ?>
沒有用第二個參數(true)嘗試過,但現在已經嘗試過,但仍然沒有模態,謝謝 –
@PeterBaker:它是自舉模態嗎?你有沒有在你的代碼中包含「bootstrap」和「jquery」(.js和.css)?還要嘗試檢查結果:最好在Chrome中,右鍵單擊您的頁面並選擇檢查。在檢查窗口中選擇「控制檯」選項卡,然後查看頁面加載過程中可能出現的任何錯誤(紅色)。也嘗試創建一個元素手動觸發模式(以確保它可以工作)。 –
已經通過控制檯進行了檢查日誌清晰起來。它是一個真正的頭部劃痕器,認爲我會將它撕掉並放入更改中 –
您的問題似乎在這裏:
if(isset($thx) === 'Y')
isset()
將返回一個布爾值。也就是說true
或false
。 然後您將true
或false
與'Y'
進行比較,但詢問它們是否相同。
一個相同的檢查===
意味着他們需要是相同的類型和相同的值。由於布爾值不是一個字符串,它們不是相同的類型,所以測試將失敗。
欲瞭解更多信息,請參閱php手冊comparison operators。
你可能想要的東西,像下面這樣:
if(isset($thx) && $thx === 'Y')
定義爲 「無工作」。怎麼了?錯誤?結果無效? – Sayse
https://api.jquery.com/ready/ – Clive
'if(isset($ thx)==='Y')'是錯誤的。 'isset()'返回一個布爾值。一個布爾值將永遠不會與'Y'相同 – Dezza