日期:2014-05-17  浏览次数:20849 次

如何给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 =....//获取你要删除的信息的id
jQuery.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
            });