客户的邪门要求!大家看能否实现?如何实现?

huang59 2003-08-13 05:14:57
在一个服务器上的asp页面上,有一个文本框,客户要求在这个文本框中显示另一台服务器上的asp或者htm文件的内容(页面内容,不是html代码),没碰见过,也没见过,大家看看能否实现?如何实现?
...全文
29 41 打赏 收藏 转发到动态 举报
写回复
用AI写文章
41 条回复
切换为时间正序
请发表友善的回复…
发表回复
huang59 2003-08-15
  • 打赏
  • 举报
回复
说白了,就是收集网上的文章,懒得复制粘贴了,直接存到数据库中(另一个网站的文章是有顺序编号的)
野马 2003-08-15
  • 打赏
  • 举报
回复
关注ing
huang59 2003-08-15
  • 打赏
  • 举报
回复
再重复一下我的问题和要求:

要达到的目的是:把另一个网站的html页面上的文字显示在嵌入式框架中(这个好实现),然后通过提交按钮,把嵌入式框架中的内容保存在数据库中
Foreverness 2003-08-15
  • 打赏
  • 举报
回复
至于html的内容就是通过xmlhttp从其它的服务器去获取了.
两部分的结合应该说是没有太多技术含量的工作.
上面的代码已经把html编辑器绑定到textarea上面了,你把html编辑器当成一个textarea来用就是.xmlhttp得到的数据直接赋值给textarea,不需要知道有html编辑器的存在
yonghengdizhen 2003-08-15
  • 打赏
  • 举报
回复
function InsertCol()
{
if(HTMLEditer.document.selection.createRange().length>0)
{
if(HTMLEditer.document.selection.createRange().item(0).tagName=="TABLE")
{
oCurrentTable=HTMLEditer.document.selection.createRange().item(0)
}
}
if(oCurrentTable!=null)
{
for(var i=0;i<oCurrentTable.rows.length;i++)
{
oCurrentTable.rows[i].insertCell();
}
}
}
function DeleteCol()
{
if(HTMLEditer.document.selection.createRange().length>0)
{
if(HTMLEditer.document.selection.createRange().item(0).tagName=="TABLE")
{
oCurrentTable=HTMLEditer.document.selection.createRange().item(0)
}
}
if(oCurrentTable!=null)
{
if(parseInt(ColIndex.value)<=oCurrentTable.rows[0].cells.length && oCurrentTable.rows[0].cells.length>1)
{
for(var i=0;i<oCurrentTable.rows.length;i++)
{
oCurrentTable.rows[i].deleteCell(parseInt(ColIndex.value)-1);
}
MaxColIndex=oCurrentTable.rows[0].cells.length;
ColIndex.value=MaxColIndex;
}
else if(oCurrentTable.rows[0].cells.length==1 && confirm("当前表格只有一列,删除当前列将同时删除整个表格,是否继续?"))
{
oCurrentTable.removeNode(true)
oCurrentTable=null;
}
else
{
alert("您没有选定表格或当前表格没有这么多列!")
}
}
}
function SyncData(sMethod)
{
if(oDateField!=null)
{
if(sMethod=="From")
{
InitEditorBody(oDateField.value);
}
else if(sMethod=="To")
{
//alert(HTMLEditer.document.body.innerHTML)
sValue=HTMLEditer.document.body.innerHTML.replace(/<XMP>/,"");
sValue=sValue.replace(/<\/XMP>/,"");
//sValue=sValue.replace(/<TABLE (.*)>/,"</XMP><TABLE>");
//sValue=sValue.replace(/<\/TABLE>/,"</TABLE><XMP>");
//alert(sValue)
oDateField.value=sValue;
}
}
}
function InitEditorBody(sHTML)
{
HTMLEditer.document.write("<HTML>\n");
HTMLEditer.document.write("<HEAD>\n");
HTMLEditer.document.write("<STYLE type='text/css'>\n");
HTMLEditer.document.write("BODY\n")
HTMLEditer.document.write("{\n")
HTMLEditer.document.write(" FONT-SIZE:12px;\n")
HTMLEditer.document.write(" BACKGROUND-COLOR:#f4f8ff;\n")
HTMLEditer.document.write(" SCROLLBAR-FACE-COLOR:#e2edfe;\n")
HTMLEditer.document.write(" SCROLLBAR-HIGHLIGHT-COLOR:#115781;\n")
HTMLEditer.document.write(" SCROLLBAR-SHADOW-COLOR:#115781;\n")
HTMLEditer.document.write(" SCROLLBAR-3DLIGHT-COLOR:#e2edfe;\n")
HTMLEditer.document.write(" SCROLLBAR-ARROW-COLOR:#115781;\n")
HTMLEditer.document.write(" SCROLLBAR-TRACK-COLOR:#e2edfe;\n")
HTMLEditer.document.write(" SCROLLBAR-DARKSHADOW-COLOR:#e2edfe\n")
HTMLEditer.document.write("}\n")
HTMLEditer.document.write("TABLE\n")
HTMLEditer.document.write("{\n")
HTMLEditer.document.write(" BORDER-COLLAPSE:collapse;\n")
HTMLEditer.document.write(" WIDTH:500px;\n")
HTMLEditer.document.write(" BORDER:1px solid #000000;\n")
HTMLEditer.document.write(" BORDER-WIDTH:1 0 0 1;\n")
HTMLEditer.document.write("}\n")
HTMLEditer.document.write("TD\n")
HTMLEditer.document.write("{\n")
HTMLEditer.document.write(" BORDER:1px solid #000000;\n")
HTMLEditer.document.write(" BORDER-WIDTH:0 1 1 0;\n")
HTMLEditer.document.write("}\n")
HTMLEditer.document.write("</STYLE>\n")
HTMLEditer.document.write("<SCRIPT>\n")
HTMLEditer.document.write(ChangeSelect.toString() + ";\n")
HTMLEditer.document.write("</" + "SCRIPT>\n")
HTMLEditer.document.write("</HEAD>\n")
HTMLEditer.document.write("<BODY leftMargin=2 topMargin=2>\n")
HTMLEditer.document.write("<XMP>" + sHTML + "</XMP>")
HTMLEditer.document.write("</BODY>\n")
HTMLEditer.document.write("</HTML>")
}
var sFrameName=window.name;
var oDateField=null;
var sFrameName=sFrameName.substr(0,sFrameName.length-5);
function InitHTMLEditor()
{
if(window.frameElement!=null)
{
window.frameElement.scrolling="no";
window.frameElement.height=document.body.scrollHeight;
window.frameElement.width=document.body.scrollWidth;
window.frameElement.marginWidth=0;
window.frameElement.marginWidth=0;
window.frameElement.frameSpacing=0;
window.frameElement.frameBorder=0;
oDateField=window.frameElement.parentNode.all(sFrameName);
oDateField.attachEvent("onchange",new Function("SyncData('From')"))
}
if(oDateField!=null) { sHTMLBody=oDateField.value }
InitEditorBody(sHTMLBody);
HTMLEditer.document.designMode='on'
HTMLEditer.document.onselectionchange=new Function("ChangeSelect()")
}
</script>
</body>
</html>
yonghengdizhen 2003-08-15
  • 打赏
  • 举报
回复
<HTML>
<HEAD>
<link rel="stylesheet" type="text/css" href="en.css">
</HEAD>
<body onfocusout="SyncData('To')" onload="InitHTMLEditor()" onfocus="ChangeSelect()" leftMargin=0 topMargin=0 rightmargin=0 bottomMargin=0>
<table cellspacing=0 cellpadding=0 style="width:100%;color:<%=session("color")%>;font-size:<%=session("size")%>">
<tr class="content2">
<td><input class=button type=button onclick="InsertTable()" value="插入表格"></td>
<td>当前行:<input name=RowIndex size=5 maxlength=5 disabled>当前列:<input disabled name=ColIndex size=5 maxlength=5></td>
<td><input class=button type=button name=btnAddRow onclick="InsertRow()" disabled value="新增行"></td>
<td><input class=button type=button name=btnDelRow onclick="DeleteRow()" disabled value="删除行"></td>
<td><input class=button type=button name=btnAddCol onclick="InsertCol()" disabled value="新增列"></td>
<td><input class=button type=button name=btnDelCol onclick="DeleteCol()" disabled value="删除列"></td>
</tr>
<tr style="content2"><td colspan=6 style="border:1px gainsboro outset;;"><iframe frameborder=0 name="HTMLEditer" src="about:blank" height="100%" width="100%"></iframe></td></tr>
</table>
<script>
var MaxRowIndex=0
var MaxColIndex=0
var oCurrentTable=null
function InsertTable()
{
HTMLEditer.focus();
sHTMLTable="</XMP><TABLE><TR><TD></TD><TD></TD></TR><TR><TD></TD><TD></TD></TR></TABLE><XMP>"
if(HTMLEditer.document.selection.type!="Control")
{
HTMLEditer.document.selection.createRange().pasteHTML(sHTMLTable)
HTMLEditer.focus();
}
else
{
alert("当前位置不能插入表格!")
}
}
function ChangeSelect()
{
btnAddRow.disabled=true;
btnAddCol.disabled=true;
btnDelRow.disabled=true;
btnDelCol.disabled=true;
RowIndex.disabled=true;
ColIndex.disabled=true;
if(HTMLEditer.document.selection.createRange().length>0)
{
if(HTMLEditer.document.selection.createRange().item(0).tagName=="TABLE")
{
oCurrentTable=HTMLEditer.document.selection.createRange().item(0)
}
}
if(oCurrentTable!=null)
{
if(oCurrentTable.rows.length>0)
{
MaxRowIndex=oCurrentTable.rows.length;
MaxColIndex=oCurrentTable.rows[0].cells.length;
btnAddRow.disabled=false;
btnAddCol.disabled=false;
btnDelRow.disabled=false;
btnDelCol.disabled=false;
RowIndex.disabled=false;
RowIndex.value=MaxRowIndex;
ColIndex.disabled=false;
ColIndex.value=MaxColIndex;
}
else
{
oCurrentTable=null;
}
}
}
function InsertRow()
{
if(HTMLEditer.document.selection.createRange().length>0)
{
if(HTMLEditer.document.selection.createRange().item(0).tagName=="TABLE")
{
oCurrentTable=HTMLEditer.document.selection.createRange().item(0)
}
}
if(oCurrentTable!=null)
{
var oNewRow=oCurrentTable.insertRow();
for(var i=0;i<oCurrentTable.rows[0].cells.length;i++)
{
oNewRow.insertCell();
}
}
}
function DeleteRow()
{
if(HTMLEditer.document.selection.createRange().length>0)
{
if(HTMLEditer.document.selection.createRange().item(0).tagName=="TABLE")
{
oCurrentTable=HTMLEditer.document.selection.createRange().item(0)
}
}
if(oCurrentTable!=null)
{
if(parseInt(RowIndex.value)<=oCurrentTable.rows.length && oCurrentTable.rows.length>1)
{
oCurrentTable.deleteRow(parseInt(RowIndex.value)-1);
MaxRowIndex=oCurrentTable.rows.length;
RowIndex.value=MaxRowIndex;
}
else if(oCurrentTable.rows.length==1 && confirm("当前表格只有一行,删除当前行将同时删除整个表格,是否继续?"))
{
oCurrentTable.removeNode(true)
oCurrentTable=null
}
else
{
alert("您没有选定表格或当前表格没有这么多行!")
}
}
}
yonghengdizhen 2003-08-15
  • 打赏
  • 举报
回复
<tr class="content">
<td colspan="6" valign="top">
<xsl:value-of select="root/record/JYSJ/@ChName" />
<xsl:value-of select="root/record/JYSJ/@star" />(限2000汉字)<br/>
<textarea class="scrollbar1" name="txtJYSJ" style="width:98%;display:non" rows="8" >
<xsl:attribute name="onchange">return limitlen(this.value,5000,'检验所见过长')</xsl:attribute>
<xsl:value-of select="root/record/JYSJ" />
</textarea>
<iframe name="txtJYSJ_HTML" frameBorder="0" SCROLLING="NO" src="../inc/HTMLEditor.asp" width="98%"></iframe>
</td>
</tr>
<tr class="content">
<td colspan="6" valign="top">
分析依据(限2000汉字)
<xsl:value-of select="root/record/JLZYYJ/@star" /><br/>
<textarea class="scrollbar1" name="txtJLZYYJ" style="width:98%;display:none" rows="4" >
<xsl:attribute name="onchange">return limitlen(this.value,2000,'分析依据过长')</xsl:attribute>
<xsl:value-of select="root/record/JLZYYJ" />
</textarea>
<iframe name="txtJLZYYJ_HTML" SCROLLING="NO" frameBorder="0" src="../inc/HTMLEditor.asp" width="98%"></iframe>
</td>
</tr>
<tr class="content">
<td colspan="6" valign="top">
检验结论(限2000汉字)
<xsl:value-of select="root/record/JYJL/@star" /><br/>
<textarea class="scrollbar1" name="txtJYJL" style="width:98%;display:none" rows="4" >
<xsl:attribute name="onchange">return limitlen(this.value,2000,'检验结论过长')</xsl:attribute>
<xsl:value-of select="root/record/JYJL" />
</textarea>
<iframe name="txtJYJL_HTML" SCROLLING="NO" frameBorder="0" src="../inc/HTMLEditor.asp" width="98%"></iframe>
</td>
</tr>
huang59 2003-08-15
  • 打赏
  • 举报
回复
yonghengdizhen(生命的插曲):能给一套完整的代码吗?
yonghengdizhen 2003-08-15
  • 打赏
  • 举报
回复
to huang59(今晚又没睡)
你没看懂我所说的吗???
郁闷ing,是我表达有问题还是你理解有问题?
yonghengdizhen 2003-08-14
  • 打赏
  • 举报
回复
如果只是达到可编辑的效果,且显示html效果,用html编辑器模拟并通过绑定一个input field是可以实现.至于从别的服务器获取数据那就是xmlhttp的任务了

我这里有现成的解决方案.
客户在一个表单中要求生成格式不固定的表格并随后用于法律文书(WORD)的生成,我就是通过这种方法结合正则表达式实现的.
born20c 2003-08-14
  • 打赏
  • 举报
回复
还没有提到这个呢,我提出来一下,全当是为了让这个问题显得更加变态一点:
用ActiveX或者Java applet,
还有一些现成的控件可用,多好的主意啊。
warlord 2003-08-14
  • 打赏
  • 举报
回复
1.text只用来显示内容;
2.另一个部件隐含用来存储.
zhiye 2003-08-14
  • 打赏
  • 举报
回复
这个想法确实很新鲜。
huang59 2003-08-13
  • 打赏
  • 举报
回复
huang59@sohu.com
brothder 2003-08-13
  • 打赏
  • 举报
回复
你有EMAIL吗?我可以把代码发给你.我使用的方法是OBJECT套IFRAME,通过调用JS实现.动网新闻有一个简单的例子你可以去看一下,如果有问题可以EMAIL给我,我的EMAIL是brothder@sina.com.
chinahuman 2003-08-13
  • 打赏
  • 举报
回复
用xmlhttp来实现吧,这个还是比较简单的
earthpea 2003-08-13
  • 打赏
  • 举报
回复
如果是本地服务器,还可以用file去读,如果是其他服务器,只怕有点麻烦
yonghengdizhen 2003-08-13
  • 打赏
  • 举报
回复
用html编辑器结合serverxmlhttp实现
李世垚 2003-08-13
  • 打赏
  • 举报
回复
大概可以吧
你用innerText属性不就行了
possible_Y 2003-08-13
  • 打赏
  • 举报
回复
不能解决,<input type=text>控件 是系统设定好的,不会解释html标签的
加载更多回复(21)

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧