問題:SiteFactory 留言板出現:服務器無響應,錯誤代碼:500。
說明:出現這個錯誤,估計也是非常少見的,為了方便查找,在這里做一下說明,方便以后用戶也遇見到類似的問題而煩惱。
類似例子解決方法:
當有用戶訪問到留言板的內容頁時(/Item/信息ID.aspx),出現服務器無響應,這樣可能是因為做模板的時候修改了里面的AJAX代碼,留言板的AJAX代碼一般情況下不需要修改,保存原樣即可。
1、在SiteFactory1.2的模板方案中,默認留言內容頁模板.html 有一段:
[正確:] function commentinit() { var x = new AjaxRequest('XML','commentform'); x.labelname = "留言回復標簽"; x.para = ['generalid=@RequestInt_id']; x.currentpage = 1; x.post('updatelabel', '{PE.SiteConfig.applicationpath/}ajax.aspx', function(s) { var xml = x.createXmlDom(s); $("commentform").innerHTML = xml.getElementsByTagName("body")[0].firstChild.data; changepage(1,'回復留言列表','JS_基本風格'); getcurrentuserinfo() }); } |
但是有些用戶卻改成了下面的:
[錯誤:] function commentinit() { var x = new AjaxRequest('XML','commentform'); x.labelname = "留言回復標簽"; x.para = ['generalid=7']; x.currentpage = 1; x.post('updatelabel', '{PE.SiteConfig.applicationpath/}ajax.aspx', function(s) { var xml = x.createXmlDom(s); $("commentform").innerHTML = xml.getElementsByTagName("body")[0].firstChild.data; changepage(1,'回復留言列表','JS_基本風格'); getcurrentuserinfo() }); } |
2、在SiteFactory 2.0的模板方案中,默認留言內容頁模板.html 有一段:
[正確:] function commentinit() { var x = new AjaxRequest('XML','commentform'); x.labelname = "留言回復"; x.para = ['itemId=@RequestInt_id']; x.currentpage = 1; x.post('updatelabel', '{PE.SiteConfig.ajaxsitepath/}ajax.aspx', function(s) { var xml = x.createXmlDom(s); document.getElementById("commentform").innerHTML = xml.getElementsByTagName("body")[0].firstChild.data; changepage(1,'回復留言列表','JS_基本風格'); getcurrentuserinfo() }); } |
但是有些用戶卻改成了下面的:
[錯誤:] function commentinit() { var x = new AjaxRequest('XML','commentform'); x.labelname = "留言回復"; x.para = ['itemId=7']; x.currentpage = 1; x.post('updatelabel', '{PE.SiteConfig.ajaxsitepath/}ajax.aspx', function(s) { var xml = x.createXmlDom(s); document.getElementById("commentform").innerHTML = xml.getElementsByTagName("body")[0].firstChild.data; changepage(1,'回復留言列表','JS_基本風格'); getcurrentuserinfo() }); } |
注意:上面的“'generalid=@RequestInt_id'”、“'itemId=@RequestInt_id'”是不需要修改的,保持默認的就可以,不需要固定其ID,這個“@RequestInt_id ”,就代表本頁信息的ID,需要用他來傳變量數據,將提交的數據提交到數據庫。
附:“@RequestInt_id ”的使用方法和說明:/help/SiteFactory/2190.html
總結:謹慎使用“@RequestInt_id ”變量,謹慎修改“@RequestInt_id ”變量。一般情況下,系統發布自帶的模板中,一些帶“@RequestInt_id ”都不需要修改,除非您特殊情況下需要修改固定其ID。