Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 克隆<;tr>;从一个窗体添加到另一个窗体-但丢失链接(事件)_Javascript_Jquery_Xmpp_Cisco - Fatal编程技术网

Javascript 克隆<;tr>;从一个窗体添加到另一个窗体-但丢失链接(事件)

Javascript 克隆<;tr>;从一个窗体添加到另一个窗体-但丢失链接(事件),javascript,jquery,xmpp,cisco,Javascript,Jquery,Xmpp,Cisco,我正在修改一个第三方构建的web客户端消息传递API,以增加可以搜索聊天室的服务器数量。API是为在一个服务器节点上搜索而构建的。服务器响应的形式为表单(没有从中获取字段的方法),并通过回调将其发布到浏览器 结果将是一个搜索室列表,选中该列表时将触发和事件,并允许用户加入聊天室 我修改了代码,使其多次抛出搜索请求,并获得显示在多个div中的多个响应表单 我已经克隆了/.clone(true)/行,并成功地将它们追加到最后一个表单中,显示得非常完美(感谢这里的其他帖子:),但用户只能从最后一个表单

我正在修改一个第三方构建的web客户端消息传递API,以增加可以搜索聊天室的服务器数量。API是为在一个服务器节点上搜索而构建的。服务器响应的形式为表单(没有从中获取字段的方法),并通过回调将其发布到浏览器

结果将是一个搜索室列表,选中该列表时将触发和事件,并允许用户加入聊天室

我修改了代码,使其多次抛出搜索请求,并获得显示在多个div中的多个响应表单

我已经克隆了/.clone(true)/行,并成功地将它们追加到最后一个表单中,显示得非常完美(感谢这里的其他帖子:),但用户只能从最后一个表单响应中选择列表,而另一个列表将仅显示为文本

有没有办法克隆链接呢?我对网络编程非常陌生,我认为链接只有在某个实例中才是活动的(当收到表单时,该实例将在收到另一个表单时被替换),但我不能很肯定这一点

此函数用于接收最后一个表单并追加保存的行

 _01handleConfigSubmit: function (form, error) {
            if (form) {
                var formView = new jabberwerx.ui.XDataFormView(form);                
                var that = this;

               formView.event("xdataItemSelected").bind(function(evt) {

                    that.jq.find(".muc_search_button_join").removeAttr("disabled");

                    var resultTable = that.jq.find(".muc_search_results table.result_table");
                    resultTable.find("tr.selected").removeClass("selected");

                    that._selectedItem = evt.data.selected;
                    resultTable.find("tr#"+evt.data.selected._guid).addClass("selected");
                });


                var searchResultsDiv = jabberwerx.$(".muc_search_results", this.jq);
                searchResultsDiv.empty();
                this.update();
                var dim = {
                    width: searchResultsDiv.width(),
                    height: searchResultsDiv.height()
                };
                formView.render().appendTo(searchResultsDiv);
                formView.dimensions(dim);

                $("table.result_table tbody").append($trs);     

            } else {
                this._showError(error);
            }
        },

谢谢大家!

此函数中的克隆发生在何处?我怀疑问题在于使用
formView.render()
克隆元素。这只会获取HTML,丢失任何事件处理程序。您需要一个返回实际DOM元素的方法,然后可以使用jQuery的
.clone(true)
将其与事件处理程序一起克隆。嘿,Banmar,.clone(true)成功了!!!非常感谢你。我在另一个函数上进行了克隆,将对象保存为全局变量。我仍在使用.render()。非常感谢!