国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JavaScript輸出所選擇起始與結束日期的方法

2019-11-19 16:06:15
字體:
來源:轉載
供稿:網友

本文實例講述了JavaScript輸出所選擇起始與結束日期的方法。分享給大家供大家參考,具體如下:

一直在用公司的報表工具做報表,報表里最常用的查詢條件就是開始日期、結束日期。

自己會一點html和js,于是就想用html+JavaScript來實現選擇查詢日期,以及做出相應。

實現之后,覺得這個還是比較簡單的,N年前學的html和javascript,總算是派上用場了,人人都可以開發網頁。

這個代碼要在谷歌的chrome瀏覽器中,日期選擇才能有效果(代碼中的input元素Type屬性值date為HTML5元素,需要支持HTML5的瀏覽器運行)

代碼如下:

<!DOCTYPE HTML><html><head> <meta http-equiv="content-type" content="charset=gbk"></meta> <script type="text/javascript">  function query()  {   var xx = document.getElementsByName("day");   var s="";   for (var i=0;i<xx.length ;i++ )   {    if(xx[i].tagName == 'TD')     s= s + xx[i].innerText;     //alert(xx[i].innerText);    else    {     if(xx[i].tagName == 'INPUT')     {      s += xx[i].value;      //由于沒有選擇日期,默認值是空串      //if(xx[i].value == null || xx[i].value == 'Undefined' || xx[i].value == "")      // alert(xx[i].value);     }    }    if( i % 2 == 1)     s+=";";   }   var yy = document.getElementById("sp");   yy.innerHTML = s;   //document.write("abcdefg<hr>");   //alert(xx.length);  } </script></head><body> <table>  <tr>   <td name="day">開始日期: <input type="date" name="day" /></td>   <td name="day">結束日期:<input type="date" name="day" /></td>   <td><input type="button" value="查 詢" onclick="query()" />   </td>  </tr>  <tr>   <td><span id="sp"></span></td>  </tr> </table></body></html>

寫完這個代碼后,第一個感覺是javascript是一個區分大小寫的編程語言,在我印象中好像就VB、SQL是不區分大小寫的,而其他的c#、java、python都是區分大小寫的,今天在寫js代碼時,很大一個坑就是定義的變量是小寫s,但是寫出大寫的S了,過了5分鐘才發現總是報錯:變量沒有定義。。。

運行效果如下:

通過這個例子,我感覺自己對js 、html更加了解:

1、日期選擇的輸入,這里通過input標簽的 type=date來實現。
2、當選擇日期之后,點擊按鈕,這個按鈕上的文字,是通過 input type=button的value屬性來實現。
3、點擊按鈕之后,怎么響應?寫上onclick數學=“處理函數” 就可以
4、這個onclick事件的響應函數要怎么寫?這里點擊之后,會輸出選擇的日期。
5、如何獲取到選擇的日期呢?這里通過document對象的 getElementsByName函數來找標簽屬性name="day"的標簽。
6、找到這些標簽之后,接下來判斷上又遇到了麻煩。對于標簽內容可以用 .innerText(只是文本而不包含其他標簽),而對于網頁的內容則是.innerHTML。另外,對于選擇的日期值,可以用.value屬性 來取。
7、接下來的一個問題是,既要取標簽內容,又要取所選擇的日期值,如何區分呢?
可以用.tagName屬性來判斷,如果是INPUT,那么用.value取值,如果是TD,那么用.innerText。
8、假設沒有選擇日期,那么獲取到的value是什么呢?實驗證明返回了空串,而不是null。如果變量s初始化,那么s的值就是Undefined。
9、字符串的賦值可以用+=運算符,那么代碼s=s+xx ,可以改成s+=xx,這種寫法普遍的寫法,現在連sql語句也是支持的
10、對于代碼中的if else語句,著實覺得寫著不方便,盡然沒有elseif或者elif,而是一定要else,然后再寫if -else。。。
11、i%2 == 1這個是因為i是0、1、2、3,當到了i=1時,才在變量s中加上分號,效果:
開始日期: 2017-01-03;結束日期:2017-01-19;
12、輸出結果放哪里?這里在報表中增加了1行:span標簽,name=sp,一開始不會顯示出來。當然,要把輸出作為這個標簽的內容,首先要找到標簽,這里通過getElementById來找到標簽,然后把輸出結果放到.innerHTML中就可以了。

PS:這里再為大家推薦幾款比較實用的天數計算在線工具供大家使用:

在線日期/天數計算器:
http://tools.VeVB.COm/jisuanqi/date_jisuanqi

在線日期計算器/相差天數計算器:
http://tools.VeVB.COm/jisuanqi/datecalc

在線日期天數差計算器:
http://tools.VeVB.COm/jisuanqi/onlinedatejsq

在線天數計算器:
http://tools.VeVB.COm/jisuanqi/datejsq

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript時間與日期操作技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結

希望本文所述對大家JavaScript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中西区| 新安县| 德阳市| 谷城县| 淮北市| 河北省| 阿坝县| 昌乐县| 易门县| 饶阳县| 南靖县| 宜城市| 安远县| 万安县| 定远县| 柞水县| 江油市| 慈利县| 冷水江市| 洪江市| 屏东县| 建德市| 静宁县| 日照市| 张家港市| 驻马店市| 清水县| 定日县| 比如县| 正定县| 新宾| 通海县| 汉寿县| 高碑店市| 清涧县| 泽州县| 太康县| 姚安县| 武义县| 友谊县| 淮滨县|