“theform._eventtarget 為空或者不是物件”,解決辦法
當點選按鈕(伺服器控制元件按鈕)時,沒有反應了,點視窗左下角(狀態條)的黃歎號,提示
theform._eventtarget 為空或者不是物件
很是奇怪,本來好好的,怎麼突然變成這樣了。由於之前改了很多東西,也不記是動了哪裡成了這樣了。
檢視網頁的原始碼(從瀏覽器右鍵中“檢視原始碼”,不是aspx的原始碼),可以看到aspx頁面生成的HTML與Javascript程式碼,如下程式碼值得關注;
//var theForm. = document.forms['form1'];
if (!theForm) {
theForm. = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
_doPostBack方法太熟悉了,這是個曝光率很高的方法,不是在程式中曝光,是在網上,多次被人提到,這是伺服器控制元件(到了客戶端後也只是普通HTML控制元件)呼叫伺服器端方法的javascript指令。
在_doPostBack方法中,用到了theForm變數,這就是在錯誤提示中提到的“theForm.__EVENTTARGET”,它為空,噢,看看為什麼;
thisForm從哪裡來的呢?
var theForm. = document.forms['form1'];
if (!theForm) {
theForm. = document.form1;
}
theForm就是表單form1呀,我們知道幾乎在每個aspx頁面中,都會有一個,且唯一的一個form表單,
繼續檢視
很顯然,form1是存在的呀,可為什麼找不到呢,我搜尋了一下"form1",結果,查出來兩個,呵呵。問題搞清楚了。
那一個form表單是用於搜尋的,僅用於搜尋框,它並不是報務器控制元件;但是它的id卻也叫form1(預設的,沒有改),這當然不行,就把它的id隨便改了一個。就OK 。問題解決。
這個問題並沒有給我帶來太多障礙,只所以還拿出來說說,主要是說說解決思路。另外建議一下,就是除了伺服器表單,其它的表單不要與這個form1表單重名;(伺服器表單只能一個,而HTML表單卻可以有多個,這並不衝突)。
當然了,表單元素是不可以巢狀的,
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-442342/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- getView().scroller.dom為空或者不是物件View物件
- “undefined 為空或不是物件”Undefined物件
- SSH在呼叫Service時獲取為空-解決辦法
- JavaScript 判斷陣列或者物件是否為空JavaScript陣列物件
- IE 不支援 Promise 解決辦法 (或者 promise 未定義)的解決方法Promise
- iOS: addObjectsFromArray 新增資料一值為空的解決辦法iOSObject
- 安裝ORACLE db /tmp空間不足解決辦法Oracle
- Java物件為空時,不顯示該物件屬性,或者將null轉換為""Java物件Null
- word匯出手機端亂碼或者打不開解決辦法
- oracle 剩餘表空間查詢慢,解決辦法Oracle
- VS2015 解決方案 或者專案 卡 正在載入 的解決辦法
- undo表空間太大解決辦法
- MongoDB Drop集合不釋放磁碟空間的解決辦法MongoDB
- 【Salesforce問題解決】Dataloader匯出的檔案亂碼或者問號的解決辦法Salesforce
- [PHP]為JSON資料的API返回空陣列或者空物件PHPJSONAPI陣列物件
- github慢解決辦法Github
- Grub Rescue解決辦法
- /dev/null解決辦法devNull
- MSBuild Tools解決辦法UI
- 11gR2中Flashback_transaction_query的undo_sql列為空的解決辦法SQL
- 臨時表空間使用率過高的解決辦法
- sqlserver、oracle資料庫排序空值null問題解決辦法SQLServerOracle資料庫排序Null
- xxx 不是內部或外部命令解決辦法以及npm配置NPM
- Laravel 安裝 sail時ubuntu軟體源很慢或者connection failed 解決辦法LaravelAIUbuntu
- git錯誤:物件檔案為空(object-file-is-empty)解決方案Git物件Object
- 解決:ORA:目標主機或者物件不存在物件
- C盤空間莫名其妙變小怎麼辦 C盤空間不足的解決辦法
- 檔案無法粉碎解決辦法
- IIS中“未將物件引用設定到物件的例項”錯誤解決辦法物件
- Oracle 11g 匯出空表解決辦法Oracle
- OpenStack 的NAT解決辦法
- android ExceptionInInitializerError解決辦法AndroidExceptionError
- Could not find *.apk!解決辦法APK
- man出錯解決辦法
- ARP病毒解決辦法
- 公寓噪音的解決辦法
- RecyclerView.addFocusables出現空指標異常NullPointerException的解決辦法View指標NullException
- WebElement.getText()為空解決方法Web