2011-05-23 61 views
3

我有這樣的代碼:

<div id="messageDiv"> 
<form> 
<textarea name="message" rows="10" cols="20" id="message"></textarea></textarea> 
<br /><br /> 
<input type="submit" value="Send" onClick="return sendmail()"> 
<input type="reset" value="Reset" name='reset'> 
</form> 
</div> 

的話,我有我的JS:

function sendmail() 
{ 
    var mail = document.getElementById('message').value; 
    window.location.href = "http://www.rainbowcode.net/apps_dev.php/profiles/mail?id="+mailid; 
    return false; 
} 

當我alert(mail)我得到正確的值,但是當我得到通過窗口我的新的一頁.location.href我想要訪問該值...我的表單是一個「後」當我做一個print_r($_POST['message'])我得到一個空陣列..請幫助?

回答

0

您的HTML錯誤,可能會影響它

<textarea name="message" rows="10" cols="20" id="message"></textarea></textarea> 

應該

<textarea name="message" rows="10" cols="20" id="message"></textarea> 

而且也是爲柱,形式不如何做。發送郵件的功能完全不

<form method='post' action='http://www.rainbowcode.net/apps_dev.php/profiles/mail'> 
    <textarea name="message" rows="10" cols="20" id="message"></textarea> 
    <br /><br /> 
    <input type="submit" value="Send"> 
    <input type="reset" value="Reset" name='reset'> 
</form> 

幫助這應該工作

UPDATE:

您可以隨時添加,可用於不同的目的,而不在形式可見隱藏值。就像你的郵件編號,它可以被添加到窗體太:

<input name='mailid' type='hidden' value='somevalue' /> 
+0

謝謝修復它... – 2011-05-23 09:20:36

+0

看到我的更新,這應該解決您的問題 – Ibu 2011-05-23 09:21:38

+0

發送數據通過後您需要指定它作爲屬性,方法和行動@Helloise – Ibu 2011-05-23 09:58:19

7

使用window.location.href你只需要改變你要的鏈接(通過刷新頁面到所需的頁面,而你的情況是從URL獲取一個id的頁面)。 如果您想發表值,使用document.MyForm.submit();

編輯: 顯然,你將不得不增加一個普通<form>標籤,而不僅僅是一個空。 爲其添加名稱/ ID,以便您可以使用JS +方法post + action將其引用爲URL。

0

form未設置爲post

更新您的HTML代碼:

<form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>" method="post"> 



更新

function sendmail() 
{ 
    var mail = document.getElementById('message').value; 
    window.location.href = "http://www.rainbowcode.net/apps_dev.php/profiles/mail?id="+mailid; 
    return false; 
} 

哪裏mailid定義?此外,您是否正在嘗試在要從JavaScript重定向到的頁面中登錄print_r($_POST['message'])?改爲嘗試print_r($_GET['id'])

+0

我加了這個,但它沒有做出任何區別..其中SCRIPT_NAME將是我的腳本名? – 2011-05-23 09:23:11

+0

@Helloise Smit:是的,'SCRIPT_NAME'將會是你的腳本的名字,但是看着你的JavaScript,我覺得你試圖通過GET請求發佈表單到另一個頁面。很難說出你正在嘗試做什麼... – stealthyninja 2011-05-23 09:27:22

+0

好吧,我把它當作我的腳本名稱..mailid是一個全局變量,我在另一個js函數中設置,它包含正確的編號,當我重定向到一個新頁面時我只想訪問用戶輸入到