【发布时间】:2015-02-01 12:11:34
【问题描述】:
我有一个显示用户发送消息的 div,当用户单击“save_convo”按钮时,div 内容被翻译为一个名为“story”的 JS 变量,传递一个查询字符串并显示在不同的页面上。
JS
var element = document.getElementById('msg_display');
var story = element.textContent || element.innerText;
// Getting text content as we only want to display the messages
$( document ).ready(function() { // button that triggers passing of data
$('#save_convo').click(function() {
window.location.href = 'http://ex.com/publish.php?convo=' + story + '';
return false;
});
});
HTML
<div id="msg_display">
<!-- messages are shown here -->
</div>
问题在于,由于 div 内容最初是空的(在页面加载时没有消息),当用户单击按钮时,他们会被带到一个空白页面,该页面不显示任何由用户。向 div 发送消息后如何更新它?我也考虑过使用 AJAX 重新加载 div,但我认为它只会刷新 div 并删除消息而不是保留它们。
有什么建议吗?
【问题讨论】:
-
我不明白,什么消息,来自哪里?你确定你不是在寻找更像 Websockets 的东西吗?
-
这是一个websocket应用,用户在聊天输入框输入,点击发送,消息显示在msg_display div中。我只想将数据从 div 传递到另一个页面。
-
相当低谷的问题,我建议使用 AJAX,但正如你所说,它只会清除 div 中的所有当前数据。如果将数据放入 textarea 会更好,因为从那里更新值很容易,但我认为您选择 div 是有充分理由的。
标签: javascript jquery html ajax