2013-05-29 73 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