1、在jsp中,页面的带有格式的文本内容外面用一个大的标签,给定表签名。
2、页面做提交的时候用上面的表签名点innerHTML的方式来获取页面带有标签和样式的内容。
3、将上面取得的内容作为一个字符串保存到数据库即可,下次把数据库里的内容直接输出到页面就可以了。
对于要输出到word里保存样式的方法也是类似的,只是需要去看一下word解析文本的方式与jsp有何区别,在输出到word的时候做一下变换即可。
提交表单 ,从数据库读出来,格式<textarea>数据</textarea>。
一、直接保存可编辑div的html到数据库,显示的时候不加任何处理,直接显示html,该有的换行都有,这样保存html的方式还可以避免脚本注入的问题。
二、输入内容之后,html会自动给你生成一个div,那么你按了回车之后输入的内容都会放到这块div中。
三、textarea内容保存到数据库,然后从数据库取出来用div显示, 前台获取textarea的value值, 把value值传到后台,对特殊字符进行处理,php为例:htmlspecialchars(value)。
这个功能其实不怎么需要Ajax。1.在页面1点添加d出页面2,(在页面1中设好返回的函数)。
2.页面2获取数据。js写上一个函数(与页面1设的返回函数一致)获取你需要的数据。
3.返回数据。关闭页面2.
4.页面1提交到页面3.
//选择人员
页面1:
function choseUser(){
var json={
tabId:"userTab",//指定一个表格ID
title:"选择人员",
width:400,
height:350,
url:"userAction.do?act=showUsers",
runPageFun:"reutrnValueFun",
afterEvent:function(){
if(arguments[0]!=undefined){
returnUserValue(arguments[0])
}
}
}
openExtWinSelect(json)
}
//得到值
function returnUserValue(json){
var frm=document.forms[0]
frm['uid'].value=json.uids
frm['uName'].value=json.names
}
//页面2
function reutrnValueFun(){
var uids=//ids
var names=//names
var json = {
uids:uids,
names:names
}
return json
}
当然这个是Ext的,用windowopen也可以的。
window.open
页面1:
function choseUser(value){
var url="userAction.do?act=showUsers"
window.open(url,'newwindow','height=350,width=400')
}
//得到值
function returnUserValue(ids,names){
var frm=document.forms[0]
frm['uid'].value=ids
frm['uName'].value=names
}
页面2:
function setUserValue(){
var ids=//获取id
var names=//获取name
window.opener.returnUserValue(ids,names)
window.opener=null
window.close()
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)