2016-09-23 45 views
1

我想製作聊天程序。但是當我點擊提交http是 重置「本地主機:3000 /」到「本地主機:3000 /?」HTML點擊提交http reset /?

爲什麼http重置和追加地址?

如果我不使用服務器只運行的index.html也

文件:/// C:/Users/dude/Desktop/node/index.html?

這是index.html的代碼

<html> 
 
<head> 
 
\t <title> chat with node js socket io </title> 
 
\t <style> 
 
\t \t #chat{ 
 
\t \t \t height:500px; 
 
\t \t } 
 
\t </style> 
 
</head> 
 

 
<body> 
 
\t <div id="chat"></div> 
 
\t <form id="send-message"> 
 
\t \t \t <input size="35" id="message"></input> 
 
\t \t \t <input type="submit"></input> 
 
\t </form> 
 

 
</body> 
 
</html>

+1

您不在表單標籤中設置任何位置。我建議使用AJAX響應。 – patwoj98

+0

你應該解釋預期的行爲是什麼。在你給定的代碼中,表單沒有命名的輸入元素,所以沒有什麼要提交的,表單沒有'action'屬性,因爲當前的url被使用,默認的方法是'GET'。這就是爲什麼你有你描述的行爲。 –

回答

1

我認爲你需要在你的信息更清晰一點在這裏。

您確定要提交整個頁面嗎?我認爲你正在尋找的不是將信息發佈到整個頁面,這是表單和提交將要做的事情。

如果您使用AJAX,您只會發送您需要的信息,而不是整個頁面,並相應地進行更新。

「?」是查詢字符串的一部分,不應影響您的軟件的工作。這暗示着它正在嘗試使用表單進行「GET」,這是默認行爲。你有沒有在服務器上聽取「GET」的內容?

我建議遵循表單中的標準HTML約定,爲您的輸入添加名稱屬性,您的表單應該張貼到的URL(「action」屬性)。一旦你標準化了你的HMTL,下一步就是看你的功能需求。例如。你有沒有你的服務器功能,聊天信息將發送到哪裏?

+0

我使用{input method =「post」type =「submit」>