2014-02-25 56 views
0

我正在嘗試使用選擇字段的值填充文本字段。 所以根據選擇文本字段應該改變。 在這種情況下,我選擇名字和人的姓氏,並在爲什麼onchange事件帶我到新的頁面?

option value="I have person email here" 

現在,我使用的選擇元素的onchange事件,調用findemail()函數。 問題是我正在收到正確的電子郵件返回,但 它將我重定向到另一個頁面並向我顯示值。

任何人都可以請幫助我。

CODE

function findemail(e) 
{ 
    document.getElementById('man-email-add').innerHTML=document.write(e.value); 
} 

HTML(我使用PHP來獲取所有的值)

<select id="manager_detail" onchange="findemail(this.options[this.selectedIndex]);">    


<?php 

    foreach ($data['display']['userMangers'] as $manager){ 
     echo $manEmail = $manager['Email']; 
     echo "<option value='$manEmail'>".$manager['First_Name'].' '.$manager['Last_Name'].' ('.$manager['Position'].')'.'</option>'; 
} 

?> 


           </select>  


Redirect to new page to show the value: 

enter image description here

+0

你在哪裏學做'.innerHTML =文件撰寫(e.value);' – epascarello

+0

沒有文件撰寫狀回聲在PHP中?像打印屏幕的東西。對不起,我是新來的JS – RIK

+0

沒有,甚至沒有關閉 – epascarello

回答

4

這是因爲你使用document.write()在頁面加載後,這在這裏看起來沒有必要:

document.getElementById('man-email-add').innerHTML= e.value; 
+0

如果我使用這個document.getElementById('man-email-add')。innerHTML = e.value;它不填充字段,man-email-add字段。 – RIK

+0

你確定你有一個id爲'man-email-add'的元素嗎?你調試過'e.value'的值了嗎? –

+0

出於某種原因,它不會讓我填充該字段。這是說網絡表單被禁用的東西。那麼你能告訴我那麼我怎樣才能把值賦給輸入man-email-add的值域?是的,我調試和值顯示在控制檯,但在頁面輸入框。 – RIK

0

它重定向到新頁面還是重新加載顯示電子郵件的同一頁面?我相信這是在document.write(e.value);將該值寫入頁面。因此,與e.value;

如果man-email-add是輸入字段替換document.write(e.value);,使用document.getElementById('man-email-add').value=e.value;

+0

在同一頁面重新加載 – RIK

+0

@Jason P帶我走過。感謝您的關注。 – RIK

相關問題