1. 程式人生 > >js中的null值------一個問題的解決方案。

js中的null值------一個問題的解決方案。

 <%
   String errorMessage = (String) request.getAttribute("errorMessage");
  %>
  <input type="hidden" Id="errorMessage" value="<%=errorMessage%>" />

function alertErrorMessage(){
   var em = $("#errorMessage").val();
  if(em != "null"){
   alert(em);
   //alert(em.length);
   $("#errorMessage").val("");
  }
 }

重點是 if(em != "null"){這句。如果寫成if(em !="")或者if(em)或者if(em != null),都不行,照樣彈出null。

經過系統的思考,發現彈出的null,不是null值,而是null字串。

如果 <input type="hidden" Id="errorMessage" value="<%=errorMessage%>" />中的java指令碼

是JSTL表示式${errorMessage},就不會出現這種情況。因為java指令碼中的errorMessage如果為空,則為null值。

到了js那裡,獲取到這個input的value的時候,就是字串null了。

這是個在js中把字串null當成null值得典型問題。

相關推薦

MySQL數據庫的中文亂碼解決方案

中文亂碼 數據庫MySQL 數據庫中輸入中文容易出現亂碼?(亂碼問題本源:參見http://blog.51cto.com/12042068/2115021)解決方法:1.在建表建庫的時候就指定默認編碼 utf8. CREATE TABLE table_name (

Xcode 內存泄露檢查出現:nil returned from a method that is expected to return a non-null value iOS 解決方案

idt d+ lai 泄露 分享 ssi compiler 解決 hat   在 使用 Xcode 檢查內存泄露時(cmd+shift+B)運行,出現了一個警告:nil returned from a method that is expected to return a

jsnull------一個問題的解決方案

 <%   String errorMessage = (String) request.getAttribute("errorMessage");  %>  <input type="hidden" Id="errorMessage" value="<

分享一個VS2013代碼窗口一閃而過的解決方案

console system 感謝 鏈接 窗口 情況 ons 點擊 sub 下載完VS2013,寫一個簡單代碼以後,我遇到了運行窗口一閃而過的情況,我按Ctrl+F5也沒能杜絕這個情況發生。 解決方案:上面一欄“項目-屬性-配置屬性-鏈接器-系統-子系統”,點擊“子系統”左

【轉載】工作遇到的js問題以及問題的解決方案

height 方案 線程 rap NPU click 創建 chan 包括 Js執行機制,主線程,和隊列任務: // 無論js中有多少代碼,最終都是要通過js引擎去執行 // 異步代碼都是瀏覽器引擎去控制的,(定時器計時,和ajax請求,都是由瀏覽器引擎控制的)也就

@Value() 設定預設後,配置無法生效的一個解決方法騷操作

遇到的現象: 使用@Value(${cash.trade.show.loan.repay:true})配置後,即使配置檔案裡配置了cash.trade.show.loan.repay = false ,程式獲得的showLoanRepay還是true。   這邊原始碼

JS 實時監聽input的value改變 解決方案

該方案在 FoxFire、Chrome、360急速、Microsoft Edge、IE11下測試均可以正常顯示。 html頁面程式碼: <!DOCTYPE html><html><head> <meta charset="

Pycharm不支援中文編碼的解決方案Pycharm中文報錯

Pycharm中不支援中文編碼的解決方案。Pycharm中文報錯 https://blog.csdn.net/zhonggaorong/article/details/53814215   版本資訊:  Pycharm 5.0.3  python &

AndroidTextView居中顯示無效的原因和解決方案

今天在寫程式碼的時候,出現一個Bug,最後解決了,現在記錄下。 自定義了一個佈局控制元件,用於PopupWindow提示郵箱型別,結果顯示的郵箱型別無法居中,剛開始的效果如圖所示: 上面所貼圖片沒有經過處理,其中“@126.com”的文字在白色背景中沒有居中。注:白色

[視訊]物聯網&整合系統的物聯互動、資料儲存、效果展示形成快速解決方案附:ServerSuperIO 3.6.2 版本釋出

增加併發模式下設定輪詢傳送裝置資料的間隔時間ParallelDeviceInterval屬性。如果有N個裝置,ParallelDeviceInterval預設值為10毫秒,ParallelInterval預設值為1000毫秒,那麼其中一個裝置的排程週期=1000+10*N。

js如何獲取一個hash物件的鍵對,尤其是鍵的獲取

var obj = { '1' : 'apple', '2' : 'orange', '3' : 'pear' }; var arrMsg = ['apple', 'orange', 'pear']; var array = [{'111': 'apple'}, {'222': 'orange

js變數和jspjava程式碼變數互相訪問解決方案

1。js變數獲取jsp頁面中java程式碼的變數值。  方法:var JS變數名 = <%=JAVA變數名 %>    我們常常會將js檔案和jsp檔案分開寫,在js檔案中,上面的方法似乎不管用了。 也可以通過變通的方法來解決: a.jsp <

vmwareNAT配置不能上網的一個解決方案

其實只需開啟VMWARE中的Edit->Virtual Network Editor,點選左下角的restore default,重置下vmware的網路設定即可。 先說我遇到的導致vmware中nat情況不能上網的情景(vmware 9): 1.當主機斷網再重新

解決:angular.js表示式為HTML時需要被渲染的問題

我最近在用angular.js重構我上學期的大程。其中一個angular插值表示式為HTML,初始表示式是這樣的: <p>{{content}}</p> 但是其中的H

Pycharm不支持中文編碼的解決方案Pycharm中文報錯 Pycharm出現的部分快捷鍵無效及解決辦法

androi bubuko mage sdn track 找到 code sso pos Pycharm中不支持中文編碼的解決方案。Pycharm中文報錯。 1. 打開Pycharm ----> File ----> Default se

Pycharm不支援中文編碼的解決方案Pycharm中文報錯 Pycharm出現的部分快捷鍵無效及解決辦法

  Pycharm中不支援中文編碼的解決方案。Pycharm中文報錯。  1. 開啟Pycharm ---->  File ----> Default setting ------> Editor --

JS如何判斷一個變數是null/undefined

本文轉自http://blog.csdn.net/sunny_ran/article/details/52572288 JS 中如何判斷 undefined JavaScript 中有兩個特殊資料型別:undefined 和 null,下節介紹了 null 的判斷,下面

Eclipse引入的js報紅叉的解決方案

問題:    專案中引入的某些js會報紅叉原因: eclipse中對js的校驗  壓縮過程中有時候會有問題  是eclipse工具的問題怎麼解決:  對報錯的js檔案右鍵-->選擇Validate 一般這一步就好了  不再報錯  還報錯的話  clean一下專案  再u

Android 按鍵防止過快點選(防抖),在ButterKnife的簡單解決方案

其實自己也在網上找了一些防抖的方案,比如RxBinding啊,NoDoubleClickListener啊,原始解決方案啊等等,不過那都不是我想要的。 因為專案中使用了ButterKnife繫結控制元件和為控制元件註冊點選事件。所以上面搜到的那些方案都不太好使

Butterknife.OnClick防止按鍵過快的點選的的一種解決方案

按鍵的防抖就是判斷一下兩次點選的時間差,但是如果在Butterknife.OnClick中寫,每次都要寫一堆程式碼 其實我們希望的最理想的解決方案是: @OnClick({R.id.record, R.id.combine}) public void o