【发布时间】:2014-07-09 09:04:12
【问题描述】:
我制作了一个包含几个元素的简单网页。我正在使用 Web 服务 API 并发送 HTTP 请求来执行操作。
问题:
当我点击Transfer 按钮时,div 元素消失了。想弄清楚它表现出这种行为的原因吗?
我希望这个 div 元素在发送 HTTP 请求后稳定在网页上,以便我执行一些其他功能。
代码如下:
MyPage.html
<div id="actions-call-control">
<table class="table table-striped">
<tr class="info">
<td>
<input type="button" class="btn btn-mini btn-primary" value="Transfer" id="button-message-control-transfer" onclick="transferMessage();" />
</td>
</tr>
</table>
</div>
Sample.js
function transferMessage() {
var callId = $("#field-call-control-callid").val();
_finesse.transferMessage(callId, _extension, _handler, _handler); //http request
}
function _handler(data) {
print2Console("RESPONSE", data);
}
function print2Console(type, data) {
var date = new Date(),
xml = null;
consoleArea = $("#console-area");
if (type === "EVENT") {
$fromAddress = $(xml).find("fromAddress");
if ($fromAddress.text() != '') // checking if the notification is a CALL
{
$("#actions-message-control").show();
ANI = $fromAddress.text();
...
}
else {
$("#actions-message-control").hide(); // hide call controls after call dropped/ended
}
finesse.js
this.transferMessage = function (callId, myExtension, handler, errHandler) {
var method = "PUT",
url = _webappPath + "/api/Dialog/" + callId,
xml = "<Dialog><requestedAction>TRANSFER</requestedAction><targetMediaAddress>" + myExtension + "</targetMediaAddress></Dialog>";
_sendReq(url, method, null, null, handler, errHandler, false, xml);
};
需要帮助吗?
【问题讨论】:
-
什么是_finesse.transferMessage(callId, _extension, _handler, _handler); ,这甚至在任何地方都定义/声明/初始化了吗?
-
很可能有一些删除它的说明。我的第一个猜测可能是在
_finesse.transferMessage方法中的某个地方...顺便说一句,使用内联 javascript(=onclick属性)是一种不好的做法 -
让我编辑我的问题。
-
另请查看
_handler中可能删除 DOM 节点的代码。 -
请贴出回调处理程序和errHandler的代码。
标签: jquery html httprequest