2013-07-22 88 views
0

我在做前端工作,爲此我不得不在其他文件中調用各種函數javascript/jQuery。所以,我使用PHP與笨,我試圖讓從PHP函數的調用調用另一個函數javascrip.Follow我想要做的事:在另一個文件中調用JavaScript函數的更好方法是什麼?

PHP:

public function validaInclusao() { 

     getAtributoJanelaPai("slCusto"); 
    } 

function getAtributoJanelaPai($idCampo) { 

    carregaScriptsJquery(); 

    echo "getAtributoJanelaPai('$idCampo');"; 
} 

的JavaScript:

function getAtributoJanelaPai(idCampo) { 
    alert('getAtributoJanelaPai'); 
    var element = window.opener.document.getElementById(idCampo); 
    var value = ''; 

    if (element.tagName === 'SELECT') { 
     value = element.selectedIndex + '|' + element.options[element.selectedIndex].value; 
    } else if (element.tagName === 'INPUT') { 
     value = element.value; 
    } 

    alert(value); 
} 

所以,它會在行:

echo "getAtributoJanelaPai('$idCampo');"; 
+3

PHP不能調用JavaScript函數。 PHP是服務器端,JavaScript是客戶端。 – cfs

+0

我的問題是:什麼是調用PHP函數?一個AJAX調用?如果是的話,你可以在AJAX請求的成功回調中處理。如果沒有,該呼叫不是動態的,所以渲染已經修改的頁面。 – sdespont

+0

不,我不使用該功能的ajax請求。但是,PHP函數調用JavaScript函數,而不是其他。 – mayconfsbrito

回答

0

創建JavaScript文件,將返回一些東西

function getAtributoJanelaPai(idCampo) { 
alert('getAtributoJanelaPai'); 
var element = window.opener.document.getElementById(idCampo); 
var value = ''; 

if (element.tagName === 'SELECT') { 
    value = element.selectedIndex + '|' + element.options[element.selectedIndex].value; 
} else if (element.tagName === 'INPUT') { 
    value = element.value; 
} 

return(value); 
} 

和PHP文件使用這一點,首先包括創建js文件。

public function validaInclusao() { 

    getAtributoJanelaPai("slCusto"); 
} 

function getAtributoJanelaPai($idCampo) { 

carregaScriptsJquery(); 

echo "<script language=javascript>document.write(getAtributoJanelaPai(idCampo));</script>"; 
} 

或嘗試這一個

echo "<script language=javascript>getAtributoJanelaPai(idCampo);</script>"; 
} 
0

你可以做到這一點,但你必須導入ŧ他Javascript文件到你的文件。

在你的頭一節把下面:

<script type="text/javascript" src="myScripts.js"></script> 

其中 「myScripts.js」 是JavaScript文件的文件名。

這是你怎麼做的回聲:

<?php echo getAtributoJanelaPai($idCampo); ?> 
+0

回聲必須位於'myScripts.js'導入下的'

  • 11. 在另一個.js文件中調用javascript方法
  • 12. 在JavaScript中鏈接方法調用時,函數調用的順序是什麼?
  • 13. 在另一個.php文件(Javascript)中調用函數
  • 14. 在另一個類中調用方法的最簡單方法是什麼?
  • 15. 調用notifyAll的好方法是什麼?
  • 16. 在will_paginate中使用helper方法的更好方法是什麼?
  • 17. 將數據傳遞給函數。什麼是更好的方法?
  • 18. 在JavaScript中編寫HTML比document.write更好的方法是什麼?
  • 19. 在javascript中切換面板的更好方法是什麼?
  • 20. 什麼是在JavaScript中創建對象的更好方法?
  • 21. 函數調用另一個函數javascript
  • 22. 如何從EJS中的另一個文件調用Javascript函數
  • 23. 不用lodash調用方法的另一種方法是什麼?
  • 24. JavaScript:調用在另一個函數中被更改的變量?
  • 25. 寫這個遞歸函數的另一種方法是什麼?
  • 26. 如何在一個類中調用另一個函數(方法)?
  • 27. 在另一個fragemt的一個片段中調用函數的方法是什麼?
  • 28. 在C++中爲動態調用註冊函數的好方法是什麼?
  • 29. 從一個對象調用函數到另一個JavaScript文件
  • 30. 從javascript中的另一個函數調用一個函數