什么'这是在另一个文件中调用JavaScript函数的更好方法

What's a better way to call a JavaScript function in another file?

本文关键字:JavaScript 调用 函数 方法 更好 文件 另一个 什么      更新时间:2023-09-26

我当时正在做前端工作,为此我不得不在其他文件中调用各种函数javascript/jQuery。因此,我将PHP与CodeIgniter一起使用,并尝试从一个PHP函数调用另一个函数javascrip。按照我想做的:

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');";

创建将返回一些的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>";
}

您可以这样做,但必须将Javascript文件导入到文档中。

在你的头部分放上以下内容:

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

其中"myScripts.js"是Javascript文件的文件名。

这就是你做回声的方法:

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