2013-07-10 102 views
1

我在一個包含在php頁面中的js文件中創建了一個jquery函數。從php頁面調用jquery函數

JS文件

$(function() { 

    function disab(){ 
     $('input#idname').attr('disabled', 'disabled'); 
    } 

}); 

在我的PHP文件,我試着撥打disab功能以這種方式,但沒有成功。

echo "<script>"; 
echo "$(function(){"; 
echo "disab();"; 
echo "});"; 
echo "</script>"; 

我該怎麼做?謝謝

+0

您只需要

+0

是PHP呼應js文件下面的JavaScript?另外,如果函數在文檔準備好的時候被調用,它不需要在文檔準備好的時候被定義,它可以被定義爲不使用'$(function()'wrap – rorypicko

回答

3

首先把你的功能放在你的js文件的document.ready函數之外......這樣它就是全局的,可以從任何地方訪問。

function disab(){ 
    $('input#idname').attr('disabled', 'disabled'); 
} 

$(function() { .. }); //use if needed.. 

並調用PHP文件中<script>標籤功能

<?php 
//all you php related codes 
... 
?> 
<script> 
    $(function(){ 
     disab(); 
    }); 
</script> 

也是最重要的,使用prop()代替attr() ...如果你正在使用最新版本的jQuery(jQuery的1.6+)

$('input#idname').prop('disabled', true); 
+0

沒關係!我把我所有的函數放在文檔中.ready函數一起使用jquery ui函數(對話框,工具提示),現在我把它們放了出來,謝謝 –

+0

welocme ..很高興幫助 – bipen

+0

對我不起作用@bipen我的代碼 $ loc = $ request-> homeURL.'dashboard。 PHP';? >