我来做百科(第二十一天)

今天就做“词条预览”吧。这个我参考了百度百科的“词条预览”功能,大概原理是通过提交一个target属性是"_blank"的form,这样会在新窗口中打开目标页,并把数据提交过去。根据这个原理写了如下js代码:
//Preview
var oPreview, oLemma, oDetail, oTag, oRefer;

function ShowPreview(){

    
if(!Check(false)) return false;
    
    
if(!oPreview){
        oPreview 
= document.createElement("form");
        oPreview.action 
= "../index/Preview.aspx";
        oPreview.method 
= "post";
        oPreview.target 
= "_blank";
        document.body.appendChild(oPreview);
    }

    
    oLemma 
= SetInput(oLemma, "lemma", document.getElementById('<%= hfLemma.ClientID %>').value)
    oDetail 
= SetInput(oDetail, "detail", document.getElementById('<%= tbDetail.ClientID %>').value)
    oTag 
= SetInput(oTag, "tag", document.getElementById('<%= tbTag.ClientID %>').value)
    oRefer 
= SetInput(oRefer, "refer", document.getElementById('<%= tbRefer.ClientID %>').value)
    
    oPreview.submit();
}


function SetInput(oInput, sName, sValue){
    
if(!oInput){
        oInput 
= document.createElement("input");
        oInput.name 
= sName;
        oInput.type 
= "hidden";
        oPreview.appendChild(oInput);
    }

    oInput.value 
= sValue;
    
return oInput;
}

这样就可以在预览页中获取数据,并处理后显示。最后把这个功能放在添加和编辑页就行了。这样预览功能就做好了。
posted @ 2008-02-23 01:18  cloudgamer  阅读(...)  评论(... 编辑 收藏