当前位置: 代码迷 >> Java Web开发 >> 怎么给html textarea文本域动态添加数据
  详细解决方案

怎么给html textarea文本域动态添加数据

热度:2401   发布时间:2013-02-25 21:16:24.0
如何给html textarea文本域动态添加数据。
本人有这这样一个需求:
就是批量删除数据库中的数据,然后把每条删除信息通过textarea显示到页面上,没删除一条数据就在textarea中追加一条数据,用来给用户展示删除的数据,我现在通过dwr尝试,但是没有达到自己想要的结果:
JScript code
DWREngine.setAsync(false);            c_lttb_pbh_deltetOutDispatch.readExcel(path, sheetName, beginCol, endCol,function(data){                if(data.length==0){                    alert("发生错误,请检查EXECL是否规范");                }else{                    document.all.resultText.value="共有:" + data[0].length + "条数据";                    for(var i=0;i<data[0].length;i++){                        c_lttb_pbh_deltetOutDispatch.archiveProcessFor112(data[0][i],data[1][i],sheetName,function(resultInfo){                            var resInfo = document.all.resultText.value;                            resultInfo = resInfo + "\n" + (i+1) + ":" + resultInfo;                            document.all.resultText.value=resultInfo;                        });                    }                }                            });            DWREngine.setAsync(true);


for循环中动态给textarea赋值,但是只有当for循环全部循环完才能显示出来,我想要的是没执行一次循环textarea中就显示一条数据,怎么实现呀。

------解决方案--------------------------------------------------------
每执行一次后,call一个controll A. A 向前台发送删除信息。前台收到后,在textarea中追加数据。前台完成操作后,给后台发一个信息,许可后台执行下次循环。
------解决方案--------------------------------------------------------
要看到比较明显的效果那么你就选择后一条一条的提交,页面上循环ajax请求后台。这样效率肯定不怎样。
还有个就是ajax提交后,页面上用js启动一个定时任务,然后ajax去请求后台结果,直到完成。这样可能会更好一些
------解决方案--------------------------------------------------------
给你的TEXTEAEA设定一个ID,然后通过添加TextNode节点元素的方法去动态追加文本信息

var parent=document.getElementById("父节点ID");
var child=document.createTextNode("添加的文本信息");
parent.appendChild(child);
------解决方案--------------------------------------------------------
JScript code
var id =....//获取你要删除的信息的idjQuery.ajax({                type: "post",                url: "后台处理.action?id="+id,//返回当前id下的内容信息即result                success: function(result) {                    if(result.length>0) {                        jQuery("#id").append(result);//这里的id即为textarea的id                    }else {                        alert('没有符合数据的内容!');                    }                },                error: function(xhr, status, error) {                    alert("服务器出错,请稍候再试。。。");                },                cache:false            });
------解决方案--------------------------------------------------------
JScript code
var id =....//获取你要删除的信息的idjQuery.ajax({                type: "post",                url: "后台处理.action?id="+id,//返回当前id下的内容信息即result                success: function(result) {                    if(result.length>0) {                        jQuery("#id").append(result);//这里的id即为textarea的id                    }else {                        alert('没有符合数据的内容!');                    }                },                error: function(xhr, status, error) {                    alert("服务器出错,请稍候再试。。。");                },                cache:false            });
  相关解决方案