2013-05-29 74 views
0

我需要像功能的一些更新的帮助:需要帮助的PHP和JavaScript的

<html> 
$result = mysql_query("SELECT *FROM tbl_a LEFT JOIN tbl_b lass ON tbl_b.b_id=a.class_id LEFT JOIN category ON category.category_id=tbl_a.category_id WHERE list ='{$id}'"); </br> 
     while($row = mysql_fetch_array($result)){ 
    $id_list = $row['id']; 
     $name = $row['name']; 
     .... 
    } 
    } 
    echo "<script type='text/javascript'> 
    var id = document.getElementById('list').value = '.$id_list;' 
    var name = document.getElementById('fname').value ='.$name;' 
    </script> "; 
</html> 

我的问题是,我可以检索数据,但它不显示在我的输入元素应该像一个更新功能

回答

0

你需要调用你的输入元素,然后给他们新的值,而不是像你在做的那样设置变量。删除“var something =”,然后做document.get .......

+0

你也可能想查看您的网页源和确认脚本实际上是越来越呈现为这样的,而不是文字。虽然看起来不错。 –

+1

我相信这是可以的,因为Javascript允许var a = b = 3; – invisal

+0

是的,另外,我对PHP并不熟悉,但我敢打赌,有一种内置的方式来做到这一点。 –

0

如果你发布的是完整的代码,那么没有listfname元素。最好打开页面并查看源代码,以查看是否将正确的值写入了Javascript。

NOTE:
请记住,如果您将Javascript放在元素HTML之后,则Javascript无法检索元素。例如:

<script> 
    document.getElementById('test').value = 'Hello World'; 
</script> 
<input type='text' id='test' value=''> 

正如您所看到的,它不会将值赋给test元素。解决方案,

<input type='text' id='test' value=''> 
<script> 
    document.getElementById('test').value = 'Hello World'; 
</script> 

把输入放在Javascript之前。

+1

我同意我们需要看到你所有的代码和你拥有它的方式将从上到下运行,这会导致它不被视为Invisal提到 –

1

行情,报价...

echo 
    "<script type='text/javascript'> 
    var id = '".$id_list."', 
    name = '".$name."'; 

     document.getElementById('list').value = id; 
     document.getElementById('fname').value = name; 
    </script> "; 

工作例如:http://codepad.viper-7.com/3eI3Od

+0

对于codepad.viper – Amir