![](/img/trans.png)
[英]Why I am not getting Validation Flash Message in UI, I gets flash error like this [object Object],[object Object],[object Object]
[英]I am getting “Object Required” error message
我想在我們網站的主頁上貼一個新聞滾動條。
我對我得到的錯誤消息感到有點困惑,因為我在一台PC上得到它而在另一台PC上得不到它:
所需對象
我正在使用下面的代碼,但是當我在default.aspx page
上將此文件用作Web用戶控件時,以下行不斷拋出Object Required
錯誤:
el2.style.height='<%=box_height %>';
結果,新聞不滾動。
任何幫助非常感謝。
<a href="#"><uc1:NewsScroller ID="NewsScroller1" runat="server" /></a>
<script language="VB" runat="server">
Public box_TextColor As String = "black"
Public box_height As Integer = 150
Public box_width As Integer = 166
Public box_padding As String = "0 0 0 20"
</script>
<script type="text/javascript" for="window" event="onload">
// <!CDATA[
return window_onload()
// ]]>
</script>
<script type="text/javascript">
// <!CDATA[
// <!--
var speed = 2;
function init(){
var el = document.getElementById("newsdiv");
el.style.overflow = 'hidden';
el.style.height='<%=box_height %>';
el.style.width='<%=box_width %>';
el.style.padding='<%=box_padding %>';
el.style.color='<%=box_TextColor %>';
var el2 = document.getElementById("newsdiv-p1");
el2.style.height='<%=box_height %>';
var el3 = document.getElementById("newsdiv-p2");
el3.style.height='<%=box_height %>';
//alert(document.getElementById("newsdiv-p2").style.height+document.getElementById("newsdiv-p2").style.height);
scrollFromBottom();
}
var go = 0;
var timeout = '';
function scrollFromBottom(){
clearTimeout(timeout);
var el = document.getElementById("newsdiv");
if(el.scrollTop >= el.scrollHeight-'<%=box_height %>'){
el.scrollTop = 0;
};
el.scrollTop = el.scrollTop + speed;
if(go == 0){
timeout = setTimeout("scrollFromBottom()",50);
};
}
function stop(){
go = 1;
}
function startit(){
go = 0;
scrollFromBottom();
}
// -->
function window_onload() {
init();
}
// ]]>
</script>
<%--<asp:Panel ID="newsdiv" runat="server" onmouseout="startit();" onmouseover="stop();">--%>
<div id="newsdiv" onmouseout="startit();" onmouseover="stop();" >
<p id="newsdiv-p1" class="spacer"></p>
<asp:Label ID="lblNews" runat="server" Text="News..."></asp:Label>
<p id="newsdiv-p2" class="spacer"></p>
</div>
<%--</asp:Panel>--%>
@Marcel,我想你的意思是來源(右鍵單擊,查看源代碼並復制代碼)?
如果是這樣,這里又一次,謝謝
<script type="text/javascript" for="window" event="onload">
// <!CDATA[
return window_onload()
// ]]>
</script>
<script type="text/javascript">
// <!CDATA[
// <!--
var speed = 2;
$(document).ready(function init(){
var el = document.getElementById("newsdiv");
el.style.overflow = 'hidden';
el.style.height='150';
el.style.width='166';
el.style.padding='0 0 0 20';
el.style.color='black';
var el2 = document.getElementById("newsdiv-p1");
el2.style.height='150';
var el3 = document.getElementById("newsdiv-p2");
el3.style.height='150';
//alert(document.getElementById("newsdiv-p2").style.height+document.getElementById("newsdiv-p2").style.height);
scrollFromBottom();
});
var go = 0;
var timeout = '';
function scrollFromBottom(){
clearTimeout(timeout);
var el = document.getElementById("newsdiv");
if(el.scrollTop >= el.scrollHeight-'150'){
el.scrollTop = 0;
};
el.scrollTop = el.scrollTop + speed;
if(go == 0){
timeout = setTimeout("scrollFromBottom()",60);
};
}
function stop(){
go = 1;
}
function startit(){
go = 0;
scrollFromBottom();
}
// -->
function window_onload() {
init();
}
// ]]>
</script>
<div id="newsdiv" onmouseout="startit();" onmouseover="stop();" >
<p id="newsdiv-p1" class="spacer">
</p>
<span id="NewsScroller1_lblNews"><a href='#' OnClick=javascript:window.open('newsDetail.aspx?NewsID=10','NewsDetail','width=800,height=600;toolbar=no;');><font face='verdana' size='2' color='#184D68'>Steve's Birthday</font><br><br><a href='#' OnClick=javascript:window.open('newsDetail.aspx?NewsID=15','NewsDetail','width=800,height=600;toolbar=no;');><font face='verdana' size='2' color='#184D68'>Our Anniversary</font><br><br><a href='#' OnClick=javascript:window.open('newsDetail.aspx?NewsID=14','NewsDetail','width=800,height=600;toolbar=no;');><font face='verdana' size='2' color='#184D68'>Jessie's Birthday</font><br><br></span>
<p id="newsdiv-p2" class="spacer"></p>
</div>
我仍然試圖將這個偉大的論壇如何運作。 昨天,我能看到一個按鈕,上面寫着“添加評論”。 從今天開始,我一直無法看到它。 我想我的問題是,你如何重新登錄以便能夠添加評論等? 登錄似乎是cookie驅動的,這意味着一旦你關閉瀏覽器,你的權限就會消失,不是嗎?
在這種情況下,錯誤消息“Object required”意味着變量el2
不包含HTMLElement
對象。
ID的元素區分大小寫,因此您無法獲取元素
<p id="newsdiv-p1" class="spacer"></p>
運用
var el2 = document.getElementById("newsDiv-p1");
此外,您無法訪問尚未呈現的元素。 把你的功能在onload
處理程序或標記后 。
順便說一句, script
元素的language
屬性很久以前就已被棄用了 。
更新:這段代碼
<script type="text/javascript" for="window" event="onload">
// <!CDATA[
return window_onload()
// ]]>
</script>
相反,使用DOM級別2方法或僅使用
window.onload = window_onload;
在開始與DOM交互之前,您需要確保DOM已准備就緒。
我建議使用jQuery並在.ready()事件處理程序中包裝DOM交互式代碼,如下所示:
$(document).ready(function(){
init();
});
這樣,您可以確保在開始引用它們之前存在所有元素,如jQuery API參考中所述 :
傳遞給.ready()的處理程序保證在DOM准備好后執行,因此這通常是附加所有其他事件處理程序並運行其他jQuery代碼的最佳位置。
確保頁面中有可用的java腳本功能。 有時在沒有方法可訪問時會出現此類錯誤。
把你的腳本標簽放在newsDiv之后。 我認為問題出現是因為html尚未呈現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.