将值从PHP传递给JavaScript [英] Passing a value from PHP to JavaScript

查看:112
本文介绍了将值从PHP传递给JavaScript的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 <?php 
echo< SCRIPT LANGUAGE ='javascript'> add dd_Employee('。$ id1。','。。$ fname1。',。$ sal1。);< / SCRIPT>;
echo< SCRIPT LANGUAGE ='javascript'> add dd_Employee('。$ id2。','。。$ fname2。',。$ sal2。);< / SCRIPT> ;
....

?>
...

我的JavaScript代码包含

  var details = new Array(); 

函数addEmployee(id,fname,salary){
var temp = new Array(id,fname,salary);
details [details.length] = temp;
alert(temp);
}

函数displayEmployee(){
for(var i = 0; i< details.length; i ++)
var temp_details = details [i];

//显示ID,名称,sal
var id = temp_details [0];
var name = temp_details [1];
var sal = temp_details [2];

alert(id);
alert(name);
alert(sal);
}

现在问题是由PHP指定的任何东西只能在 AddEmployee 。这意味着它工作正常。但在 displayEmployee 中,PHP分配的值不起作用。我的逻辑中是否有任何缺陷?

解决方案

只需直接填充全局数据结构,而不是通过JavaScript函数传递它。



示例:



<$ p $您可能会遇到变量范围问题p> <?php
printdetails [details.length] = new Array('$ id1','$ name1','$ salary1'); \\\
;
?>


I have PHP code as in the following.

<?php
    echo "<SCRIPT LANGUAGE='javascript'>add dd_Employee('".$id1."','".$fname1."',".$sal1.");</SCRIPT>";
    echo "<SCRIPT LANGUAGE='javascript'>add dd_Employee('".$id2."','".$fname2."',".$sal2.");</SCRIPT>";
    ....

?>
...

And my JavaScript code contains

var details=new Array();

function addEmployee(id,fname,salary){
    var temp=new Array(id,fname,salary);
    details[details.length]=temp;
    alert(temp);
}

function displayEmployee(){
    for (var i=0;i<details.length;i++)
        var temp_details=details[i];

    //Display the id,name,sal
    var id=temp_details[0];
    var name=temp_details[1];
    var sal=temp_details[2];

    alert(id);
    alert(name);
    alert(sal);
}

Now the problem is whatever assigned by the PHP will visble only in AddEmployee. Which means it is working fine. But inside displayEmployee the value assigned by PHP will not work. Is there any flaw in my logic?

解决方案

Just populate your global data structure directly rather than passing it through a JavaScript function. You are likely running into a variable scope problem since you are allocating memory in addEmployee.

Example:

<?php
print "details[details.length] = new Array('$id1', '$name1', '$salary1');\n";
?>

这篇关于将值从PHP传递给JavaScript的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆