Javascript根据选中的数据颜色,全文档搜索选中的数据节点(可条件选择单个或多个)

来源:互联网 发布:手机监测软件流量 编辑:程序博客网 时间:2024/05/22 05:12

/**
 * 标记当前选中的数据颜色为'#c90000'(之后的取值以此颜色为基准)
 */
function selectCondition(element) {
 var aElement = element.getElementsByTagName("a")[0];
 var str = deleteStyleWithElement(aElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement , element);
 if( '0' == str){
  alert("当前项目已经在文本框里填写了内容!");
 }else if('1' == str){
  if(aElement.innerHTML){
   if(aElement.innerHTML.indexOf('#c90000') != -1 ){
    aElement.innerHTML = aElement.innerText;
   }else{
    aElement.innerHTML = '<font color="#c90000">'  + aElement.innerText + '</font>';
   }
  }
 }
}

/**
 * 检查文本框之前的选择有没有被选中
 */
function checkInput(element){
 var parentTr = element.parentElement.parentElement.parentElement;
 var tdElements = parentTr.getElementsByTagName("td");
 var m = 0;
 for ( var i = 0; i < tdElements.length; i++) {
  var aElement = tdElements[i];
  if(aElement.innerHTML.indexOf('#c90000') != -1 ){
   m ++;
  }
 }
 if( 0 != m ){
  alert("该项选择已选择!请取消选择以便自定义的输入!");
//  for ( var i = 0; i < tdElements.length; i++) {
//   var aElement = tdElements[i];
//   if(aElement.innerHTML.indexOf('#c90000') != -1
//     && aElement.innerText != element.innerText ){
//    aElement.getElementsByTagName("a")[0].innerHTML = aElement.innerText;
//   }
//  }
 }
}


function deleteStyleWithElement(parentElement , element){
 var str = "";
 var tdElements = parentElement.getElementsByTagName("td");
 var inputElements = parentElement.getElementsByTagName("input");
 var inputValue = "";
 for ( var i = 0; i < inputElements.length; i++) {
  if(inputElements[i].value){
   inputValue += inputElements[i].value + ",";
  }
 }
 if(inputValue.length> 1){
  str = '0';
 }else{
  for ( var i = 0; i < tdElements.length; i++) {
   var aElement = tdElements[i];
   if(aElement.innerHTML.indexOf('#c90000') != -1
     && aElement.innerText != element.innerText ){
    aElement.getElementsByTagName("a")[0].innerHTML = aElement.innerText;
   }
  }
  str = '1';
 }
 return str;
}

 

 


/**
 * 获取elementId为ID号的页面节点里的TD里的所有值,以逗号隔开
 * @param elementId
 * @returns {String}
 */
function getTdValueForElement(elementId){
 var element = document.getElementById(elementId);
 var tdList = element.getElementsByTagName("td");
 var conditionvalues = "";
 if( null!= tdList && tdList.length > 0){
  
  for ( var i = 0; i < tdList.length; i++) {
   var td = tdList[i];
   if(td.innerHTML.indexOf('#c90000') != -1 ){
    conditionvalues +=   td.innerText + ',';
   }
  }
  conditionvalues = subRealValue(conditionvalues);
 }
 
 return conditionvalues;
}

/**
 * 获取elementId为ID号的页面节点里的TD里的值或是INPUT里的值(此处仅可返回单个TD节点数据)
 * @param elementId
 * @returns {String}
 */
function getTdValueWithInputForElement(elementId){
 var element = document.getElementById(elementId);
 var tdList = element.getElementsByTagName("td");
 var conditionvalues = "";
 var m = 0;
 if( null!= tdList && tdList.length > 0){
  for ( var i = 0; i < tdList.length; i++) {
   var td = tdList[i];
   if(td.innerHTML.indexOf('#c90000') != -1 ){
    if( m <=0 ){
     conditionvalues =   td.innerText ;
    }else{
     alert("此处只能选择一项!");
     return;
    }
    m++;
   }
  }
  conditionvalues = subRealValue(conditionvalues);
 }
 if(m == 0){
  var inputList = element.getElementsByTagName("input");
  if(null!=  inputList && inputList.length> 0){
   if(inputList.length == 1){
    conditionvalues =  inputList[0].value;
   }else if(inputList.length == 2){
    conditionvalues =  inputList[0].value +"~" + inputList[1].value + "周岁";
   }
  }
 }
 return conditionvalues;
}

 

 

原创粉丝点击