欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用javaScript實現(xiàn)點擊輸入框彈出窗體選擇信息

 更新時間:2013年12月11日 09:51:04   作者:  
這篇文章主要是對利用javaScript實現(xiàn)點擊輸入框彈出窗體選擇信息進的實例行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助

在這里奉上源代碼,沒有做樣式處理,不過功能是可以的,希望大家可以和我交流交流!

復制代碼 代碼如下:

<html>
 <head>
  <title>點擊彈出DIV選擇信息</title>
     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
     <meta http-equiv="description" content="this is my page">
     <meta http-equiv="content-type" content="text/html; charset=UTF-8">
 </head>

 <body>
  <input type="text" onfocus="alertDivINFO(this, 'id', 'name', true, true, 600, 300, 'arrs')" />
  <div style="position: absolute;"></div>
 </body>
</html>

<script type="text/javascript">

 //數組信息
 var arrs = new Array();
 arrs.push({id:"1", name:"張三3"});
 arrs.push({id:"2", name:"李四3"});
 arrs.push({id:"3", name:"申午武3"});
 arrs.push({id:"4", name:"周琬淞3"});
 arrs.push({id:"5", name:"覃曉為3"});
 arrs.push({id:"6", name:"王五"});
 arrs.push({id:"7", name:"寶典3"});

/**
 * obj: 點擊文本框的對象
 * idStr: json數組的id鍵名
 * nameStr: json數組的name鍵名
 * bool:  true:表示追加 false:表示重新賦值
 * boolSet: true:ID和Name的值都顯示 false:只顯示Name的值
 * widthNum: 信息DIV的寬度
 * heightNum: 信息DIV的高度
 * arrName: 數組名稱
 */
function alertDivINFO(obj, idStr, nameStr, bool, boolSet, widthNum, heightNum, arrName){
 obj.blur();
 if(!widthNum){
  widthNum = 600;
 }
 if(!heightNum){
  heightNum = 350;
 }
 //創(chuàng)建大的DIV
 var alertDivParent = document.createElement("div");
 alertDivParent.id = "alertDivParent";
 with(alertDivParent.style){
  top = 0;
  left = 0;
  position = "absolute";
  background = "#EEEEEE";
  filter  = "alpha(opacity=70)";
  opacity = 0.7;
  width  = Math.max(document.body.clientWidth, document.body.scrollWidth);
  height  = Math.max(document.body.clientHeight, document.body.scrollHeight);
 }
 document.body.appendChild(alertDivParent);
 //創(chuàng)建小的DIV
 var alertDiv = document.createElement("div");
 alertDiv.id = "alertDiv";
 with(alertDiv.style){
  width = widthNum;
  height = heightNum;
  position = "absolute";
  background = "#DDDDDD";
  left  = (Math.max(document.body.clientWidth, document.body.scrollWidth) - widthNum) / 2;
  top  = (Math.max(document.body.clientHeight, document.body.scrollHeight) - heightNum) / 2;
 }
 //添加到窗體
 document.body.appendChild(alertDiv);

 //創(chuàng)建搜索的DIV
 var alertQueryDiv = document.createElement("div");
 alertQueryDiv.id = "alertQueryDiv";
 //將搜索的DIV添加到信息DIV
    alertDiv.appendChild(alertQueryDiv);

    alertQueryDiv.innerHTML = "搜索   名稱:";

    //創(chuàng)建文本框
    var alertQueryINPUT = document.createElement("input");
    alertQueryINPUT.id = "alertQueryINPUT";
    alertQueryINPUT.type = "text";
    //將文本框添加到搜索的DIV
    alertQueryDiv.appendChild(alertQueryINPUT);

    //創(chuàng)建搜索按鈕
    var alertQueryBUTTON = document.createElement("input");
 alertQueryBUTTON.id = "alertQueryBUTTON";
    alertQueryBUTTON.type = "button";
    alertQueryBUTTON.value = " 搜 索 ";
    //給按鈕添加事件
    alertQueryBUTTON.onclick = function(){
  //計算該寬度可放多少單元格
  var tdWidthNum = 130;
  var tdNum = parseInt(widthNum / tdWidthNum);
     var num = 0;
     var j = 0;
     //獲取顯示信息的Table
  var alertInfoTab = document.getElementById("alertInfoTab");
  //清空THead的信息
  alertInfoTab.deleteTHead();
     //循環(huán)數組
  for(var i = 0; i < eval(arrName).length; i ++){
   //如果與數組中的相等就添加到TABLE
      if(eval(arrName + "[i]." + nameStr).indexOf(alertQueryINPUT.value) >= 0){
    var header;
    if(j % tdNum == 0){
     header = alertInfoTab.createTHead();
     header = header.insertRow(num);
     num ++;
    }
    j ++;
    var headerName = header.insertCell(-1);
    with(headerName.style){
     width = tdWidthNum;
     color = "blue";
     cursor = "pointer";
    }
    if(boolSet)
     headerName.appendChild(document.createTextNode(eval(arrName + "[i]." + idStr) + ": " + eval(arrName + "[i]." + nameStr)));
    else if(!boolSet)
     headerName.appendChild(document.createTextNode(eval(arrName + "[i]." + nameStr)));
    headerName.onclick = function(){
     if(bool)
      obj.value = obj.value + this.innerHTML + ";";
     else if(!bool)
      obj.value = this.innerHTML;
     //移除彈出的窗體
     document.body.removeChild(alertDiv);
     document.body.removeChild(alertDivParent);
    };
   }
     }
    };
    //將按鈕添加到搜索的DIV
    alertQueryDiv.appendChild(alertQueryBUTTON);

    //創(chuàng)建清空按鈕
    var alertClearBUTTON = document.createElement("input");
 alertClearBUTTON.id = "alertClearBUTTON";
    alertClearBUTTON.type = "button";
    alertClearBUTTON.value = " 清 空 ";
    alertClearBUTTON.onclick = function(){
     //給文本框賦空值
     obj.value = "";
  //移除彈出的窗體
  document.body.removeChild(alertDiv);
  document.body.removeChild(alertDivParent);
    };
    //將按鈕添加到搜索的DIV
    alertQueryDiv.appendChild(alertClearBUTTON);

    //創(chuàng)建關閉按鈕
    var alertCancelBUTTON = document.createElement("input");
 alertCancelBUTTON.id = "alertCancelBUTTON";
    alertCancelBUTTON.type = "button";
    alertCancelBUTTON.value = " 關 閉 ";
    alertCancelBUTTON.onclick = function(){
  //移除彈出的窗體
  document.body.removeChild(alertDiv);
  document.body.removeChild(alertDivParent);
    };
    //將按鈕添加到搜索的DIV
    alertQueryDiv.appendChild(alertCancelBUTTON);

 //創(chuàng)建顯示信息的Table
 var alertInfoTab = document.createElement("table");
 alertInfoTab.id = "alertInfoTab";
 with(alertInfoTab.style){
  margin = 20;
 }

 //計算該寬度可放多少單元格
 var tdWidthNum = 130;
 var tdNum = parseInt(widthNum / tdWidthNum);
    var num = 0;
 for(var i = 0; i < eval(arrName).length; i ++){
  var header;
  if(i % tdNum == 0){
   header = alertInfoTab.createTHead();
   header = header.insertRow(num);
   num ++;
  }
  var headerName = header.insertCell(-1);
  with(headerName.style){
   width = tdWidthNum;
   color = "blue";
   cursor = "pointer";
  }
  //var headerType = header.insertCell(-1);
  if(boolSet)
   headerName.appendChild(document.createTextNode(eval(arrName + "[i]." + idStr) + ": " + eval(arrName + "[i]." + nameStr)));
  else if(!boolSet)
   headerName.appendChild(document.createTextNode(eval(arrName + "[i]." + nameStr)));
  //headerType.appendChild(document.createTextNode("Type"));

  headerName.onclick = function(){
   if(bool)
    obj.value = obj.value + this.innerHTML + ";";
   else if(!bool)
    obj.value = this.innerHTML;
   //移除彈出的窗體
   document.body.removeChild(alertDiv);
   document.body.removeChild(alertDivParent);
  };
 }
 //將table添加到顯示信息的DIV
    alertDiv.appendChild(alertInfoTab);
}
</script>

相關文章

  • Bootstrap樹形組件jqTree的簡單封裝

    Bootstrap樹形組件jqTree的簡單封裝

    這篇文章主要介紹了Bootstrap樹形組件jqTree的簡單封裝,封裝一個稍微完整點的樹形組件,感興趣的小伙伴們可以參考一下
    2016-01-01
  • 教你使用javascript簡單寫一個頁面模板引擎

    教你使用javascript簡單寫一個頁面模板引擎

    不知道你有木有聽說過一個基于Javascript的Web頁面預處理器,叫做AbsurdJS。只是打算寫一個CSS的預處理器,后來擴展到了CSS和HTML,可以用來把Javascript代碼轉成CSS和HTML代碼。當然,由于可以生成HTML代碼,你也可以把它當成一個模板引擎,用于在標記語言中填充數據。
    2015-05-05
  • layer.msg()去掉默認時間,實現(xiàn)手動關閉的方法

    layer.msg()去掉默認時間,實現(xiàn)手動關閉的方法

    今天小編就為大家分享一篇layer.msg()去掉默認時間,實現(xiàn)手動關閉的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • JavaScript?深拷貝的循環(huán)引用問題詳解

    JavaScript?深拷貝的循環(huán)引用問題詳解

    如果說道實現(xiàn)深拷貝最簡單的方法,我們第一個想到的就是?JSON.stringify()?方法,因為JSON.stringify()后返回的是字符串,所以我們會再使用JSON.parse()轉換為對象,這篇文章主要介紹了JavaScript?深拷貝的循環(huán)引用問題,需要的朋友可以參考下
    2022-12-12
  • JS中使用cavas截圖網頁并解決跨域及模糊問題

    JS中使用cavas截圖網頁并解決跨域及模糊問題

    這篇文章主要介紹了JS中使用cavas截取網頁并解決跨域以及模糊問題 ,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-11-11
  • js+css繪制顏色動態(tài)變化的圈中圈效果

    js+css繪制顏色動態(tài)變化的圈中圈效果

    這篇文章主要介紹了js+css繪制顏色動態(tài)變化的圈中圈效果,涉及JavaScript結合時間函數動態(tài)操作頁面元素樣式的相關技巧,需要的朋友可以參考下
    2016-01-01
  • 起點頁面?zhèn)髦礿s,有空研究學習下

    起點頁面?zhèn)髦礿s,有空研究學習下

    起點上的頁面?zhèn)髦礿s,有空研究下
    2010-01-01
  • JavaScript使用prototype原型實現(xiàn)的封裝繼承多態(tài)示例

    JavaScript使用prototype原型實現(xiàn)的封裝繼承多態(tài)示例

    這篇文章主要介紹了JavaScript使用prototype原型實現(xiàn)的封裝繼承多態(tài),涉及javascript prototype與面向對象程序設計相關操作技巧,需要的朋友可以參考下
    2018-08-08
  • js模擬實現(xiàn)Array的sort方法

    js模擬實現(xiàn)Array的sort方法

    JavaScript的Array對象有一個sort方法,用于實現(xiàn)對數組元素的排序,該方法默認按照數組項ASCII 字符順序升序排列。這篇文章重點給大家介紹js模擬實現(xiàn)Array的sort方法,一起看看吧
    2007-12-12
  • 基于JS代碼實現(xiàn)圖片在頁面中旋轉效果

    基于JS代碼實現(xiàn)圖片在頁面中旋轉效果

    這篇文章主要介紹了基于JS代碼實現(xiàn)圖片在頁面中旋轉效果 的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-06-06

最新評論