天天看點

釋出一個原創的基于Ajax的通用(組合)查詢(續)

3.AjaxSearchClientScript.js

釋出一個原創的基于Ajax的通用(組合)查詢(續)

var  tbPanel             =   null ;         // 用于展示組合條件的表控件

釋出一個原創的基于Ajax的通用(組合)查詢(續)

var  tableName         =   null ;         // 記錄查詢的表

釋出一個原創的基于Ajax的通用(組合)查詢(續)

var  fieldsInfo         =   null ;         // 儲存從服務端取得的對應表的字段資訊

釋出一個原創的基于Ajax的通用(組合)查詢(續)

var  no                 =   0 ;         // 為防止出現重複id儲存的計數器

釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 添加條件編輯行

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  addTerm(tbPanelId)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    tbPanel = document.getElementById(tbPanelId);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if(tableName == null) tableName = document.getElementById("transValue").value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    // 添加一待填模闆行

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var row    = tbPanel.insertRow();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    no++;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    row.id = "row"+no;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //*****************************step 1:添加字段選擇部分*****************************

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var cell            = row.insertCell();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var fieldInputId    = "field"+row.id;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var newElement        = document.createElement("<SELECT ID='"+fieldInputId+"' οnchange='javascript:getOpts("+row.id+");getInput("+row.id+")'></SELECT>");

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell.insertBefore(newElement);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //取出字段資訊,首次從服務端取得

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if(fieldsInfo == null)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        fieldsInfo = WebUI.AjaxSearchSystem.AjaxSearchMethod.GetFields(tableName.toString()).value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //分解字段資訊,格式為“字段中文名|字段名”

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var fieldsInfoLen;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var i,index;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var fieldValue;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    fieldsInfoLen = fieldsInfo.length

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    for(i=0;i<fieldsInfoLen;i++)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        fieldValue = fieldsInfo[i];

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        index = fieldValue.indexOf("|");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        newElement.options[newElement.options.length] = new Option(fieldValue.substring(0,index),fieldValue.substring(index+1,fieldValue.length));

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //*****************************step 2:提取預設(首個)字段對應的運算符*************

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell = row.insertCell();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var optInputId = "opt" +row.id;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    newElement = document.createElement("<SELECT ID='"+optInputId+"' style='WIDTH: 88px'></SELECT>");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell.insertBefore(newElement);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    getOpts(row);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //*****************************step 3:設定字段條件值的錄入(選擇)框***************

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    getInput(row);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //*****************************step 4:生成連接配接條件選擇框***************************

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell = row.insertCell();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var relateInputId = "relate"+row.id;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    newElement = document.createElement("<SELECT ID='"+relateInputId+"'></SELECT>");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell.insertBefore(newElement);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    newElement.options[newElement.options.length] = new Option("并且","And");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    newElement.options[newElement.options.length] = new Option("或者","Or");

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //*****************************step 5:生成删除目前行按紐***************************

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell = row.insertCell();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var deleteBtnId = "delete"+row.id;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    newElement = document.createElement("<INPUT ID='"+deleteBtnId+"' type='Button' class='redButtonCss' value='删除' οnclick='javascript:DelRow("+row.id+")'>");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell.insertBefore(newElement);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //*****************************step 6:生成增加下一行按紐***************************

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell = row.insertCell();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var addBtnId = "add"+row.id;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    newElement = document.createElement("<INPUT ID='"+addBtnId+"' type='Button' class='redButtonCss' value='新增' οnclick='javascript:addRow("+row.id+")'>");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    cell.insertBefore(newElement);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 取得并設定運算符

釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  getOpts(row)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var rowId = row.id;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var fieldSelId = "field"+rowId;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var field = document.getElementById(fieldSelId);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var elemID = "opt"+rowId;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var element = document.getElementById(elemID);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var optInfo = WebUI.AjaxSearchSystem.AjaxSearchMethod.GetOpts(tableName.toString(),field.value).value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var optValue;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var j,index;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //先移除原有項

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    while (element.options.length > 0) 

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{    

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        element.options.remove(element.options.length-1);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    for(j=0;j<optInfo.length;j++)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        optValue = optInfo[j];

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        index = optValue.indexOf("|");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        element.options[element.options.length] = new Option(optValue.substring(0,index),optValue.substring(index+1,optValue.length));

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 設定值錄入控件,取得可能存在的枚舉值

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  getInput(row)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var rowId = row.id;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var fieldSelId = "field"+rowId;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var field = document.getElementById(fieldSelId);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var inputId = "input"+rowId;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var inputElement = document.getElementById(inputId);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (inputElement != null)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        row.deleteCell(2);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //擷取可能存在的枚舉值

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var enums = WebUI.AjaxSearchSystem.AjaxSearchMethod.GetEnums(tableName.toString(),field.value).value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var oCell;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (enums.length <= 1)//不存在枚舉值,使用text

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var elementSyntax = "<INPUT ID='"+elemID+"' type='text' style='WIDTH: 144px'>";

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        oCell = row.insertCell(2);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var elemID = "input"+rowId;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        switch(enums[0])

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            case "int":

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                elementSyntax = "<INPUT ID='"+elemID+"' type='text' style='WIDTH: 144px' onKeyPress='javascript:return controlNumberKeyPress(this)' onKeyUp='return controlNumberOnKeyUp(this)' οnfοcus='this.select()' style='TEXT-ALIGN:right' οnpaste='return !clipboardData.getData(\"text\").match(/\D/);'>"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            case "decimal":

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                elementSyntax = "<INPUT ID='"+elemID+"' type='text' style='WIDTH: 144px' onKeyPress='javascript:return controlMoneyKeyPress(this)' onKeyUp='return controlMoneyOnKeyUp(this,10,4)' οnfοcus='this.select()' style='TEXT-ALIGN:right' οnpaste='return !clipboardData.getData(\"text\").match(/\D/);'>"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            case "datetime":

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                elementSyntax = "<INPUT ID='"+elemID+"' type='text' style='WIDTH: 144px' οnfοcus='setday(this)'οnkeypress='return false' onselectstart='return false;' readonly='true' οnpaste='return false;' >"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            default:

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                elementSyntax = "<INPUT ID='"+elemID+"' type='text' style='WIDTH: 144px'>"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var oNewItem = document.createElement(elementSyntax);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        oCell.insertBefore(oNewItem);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    else //存在枚舉值,使用select

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        oCell = row.insertCell(2);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var elemID = "input"+rowId;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var oNewItem = document.createElement("<SELECT ID='"+elemID+"' style='WIDTH: 144px'></SELECT>");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        oCell.insertBefore(oNewItem);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var enumValue;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var j,index;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var element = document.getElementById(elemID);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        for(j=1;j<enums.length;j++)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            enumValue = enums[j];

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            index = enumValue.indexOf("|");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            element.options[element.options.length] = new Option(enumValue.substring(0,index),enumValue.substring(index+1,enumValue.length));

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //用于值的資料類型

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var fieldType= document.createElement("<INPUT id='type"+rowId+"'type='hidden'>");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    oCell.insertBefore(fieldType);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    document.getElementById("type"+rowId).value = enums[0];

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 删除目前行

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  DelRow(row)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var rowOfIndex = row.rowIndex;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if(tbPanel.rows.length == 1)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        return

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    else if (rowOfIndex == tbPanel.rows.length-1)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        //删除最後一行時,保持增加按紐在最後一行

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var cell = tbPanel.rows[rowOfIndex-1].insertCell();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var addBtnId = "add"+tbPanel.rows[rowOfIndex-1].id;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        newElement = document.createElement("<INPUT ID='"+addBtnId+"' type='Button' class='redButtonCss' value='新增' οnclick='javascript:addRow("+tbPanel.rows[rowOfIndex-1].id+")'>");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        cell.insertBefore(newElement);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    tbPanel.deleteRow(rowOfIndex);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 新增行

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  addRow(row)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    row.deleteCell(5);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    addTerm(tbPanel.id);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 得到組合條件

釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  getCombinTerm()

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var lenOfRows = tbPanel.rows.length;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var i=0;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var combinTerm = "";

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var field="",opt="",inputValue="",jointMode="",fieldType="";

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    for(i=0;i<lenOfRows;i++)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        field        = tbPanel.rows[i].cells[0].childNodes[0].value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        opt            = tbPanel.rows[i].cells[1].childNodes[0].value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        inputValue    = tbPanel.rows[i].cells[2].childNodes[0].value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        //判斷字段類型

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        fieldType =tbPanel.rows[i].cells[2].childNodes[1].value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        switch(fieldType)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            case "char":

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                if (inputValue == ""|| inputValue == null)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    if(opt.toLowerCase() == "like" || opt.toLowerCase() == "not like")

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                        inputValue = "'%%'";

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    else

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                        inputValue = "''";

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                else

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    if(opt.toLowerCase() == "like" || opt.toLowerCase() == "not like")

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                        inputValue = "'%"+inputValue+"%'"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    else

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                        inputValue = "'"+inputValue+"'"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

                }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            case "int":

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                if (inputValue == ""|| inputValue == null) inputValue = 0;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            case "decimal":

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                if (inputValue == ""|| inputValue == null) inputValue = 0;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            case "datetime":

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                if (inputValue == ""|| inputValue == null)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    inputValue = "''";

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                else

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    inputValue = "'"+inputValue+"'"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            default:

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                break;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        //拼接條件

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        combinTerm += " "+tableName+"."+field + " " + opt + " " + inputValue;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if (i<lenOfRows-1)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            jointMode    = tbPanel.rows[i].cells[3].childNodes[0].value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            combinTerm += " " + jointMode

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    document.getElementById("transValue").value = combinTerm;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //return combinTerm;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

//

釋出一個原創的基于Ajax的通用(組合)查詢(續)

var  oldValue  =   "" ;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

var  MONEY_FLAG  =   "" ;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

var  THOUSAND_FLAG  =   " , " ;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  controlNumberKeyPress(textbox)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    oldValue = textbox.value.replace(MONEY_FLAG,'');

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    return /\d/.test(String.fromCharCode(event.keyCode))||(textbox.value.indexOf('+')<0?String.fromCharCode(event.keyCode)=="+":false);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

//

釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  controlMoneyKeyPress(textbox)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var val = textbox.value.replace(MONEY_FLAG,'');

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if(isNumber(event.keyCode))

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        return true;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (textbox.value.indexOf('+') < 0)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if ( String.fromCharCode(event.keyCode)=="+" && val.length < 1)

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            return true;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if ( textbox.value.indexOf('.') < 0)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if (String.fromCharCode(event.keyCode)==".")

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            return true;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    return false;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 控制金額錄入keyUp事件

釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  controlNumberOnKeyUp(textbox)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //處理"後退"鍵

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //alert(event.keyCode);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (event.keyCode == 8)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        return true;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (String.fromCharCode(event.keyCode) != '\t' && event.keyCode != 13)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if( !/\d/.test(String.fromCharCode(event.keyCode)) &&

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

            event.keyCode != 190 )

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            //textbox.value = "";

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            textbox.value = oldValue;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            oldValue = textbox.value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            return false;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    return true;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 控制金額錄入keyUp事件

釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  controlMoneyOnKeyUp(textbox, intBit , dotBit)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    //處理"後退"鍵

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (event.keyCode == 8)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if (textbox.value.indexOf(MONEY_FLAG) < 0)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            textbox.value = MONEY_FLAG + textbox.value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        return true;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (String.fromCharCode(event.keyCode) != '\t' && event.keyCode != 13)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if( ! isNumber (event.keyCode) &&

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

            event.keyCode != 190 )

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            //textbox.value = "";

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            textbox.value = MONEY_FLAG + oldValue;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            oldValue = textbox.value.replace(MONEY_FLAG,"");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            return false;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        textbox.value = MONEY_FLAG + textbox.value.replace(MONEY_FLAG,'');

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var val = textbox.value;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var dotBehind = "";

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        val = val.replace(MONEY_FLAG,'').replace(/\,/g,'');

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        var iIndex = val.indexOf('.');

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if (iIndex > 0)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            var valDot = val.substring(val.indexOf('.') + 1,val.length);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            if (iIndex > intBit)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                val = val.substring(0,intBit);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

            if (valDot.length > dotBit)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                textbox.value = addThousandFlag(val.substring(0,val.indexOf('.'))) + '.' + valDot.substring(0,dotBit);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                return;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

            dotBehind = val.substring(val.indexOf('.'),val.length);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            val = val.substring(0,val.indexOf('.'));

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        else if (val.length >= intBit)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            if (val.length > intBit)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                val = val.substring(0,intBit);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                val = addThousandFlag(val);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            textbox.value = val + '.';

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            return;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        //val = noOtherInfoNumber;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        textbox.value = addThousandFlag(val) + dotBehind;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 添加千分位号

釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  addThousandFlag(val)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var strTemp = MONEY_FLAG;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (val.length < 4)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        return MONEY_FLAG + val;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    var flag = false;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (val.length % 3 != 0)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        strTemp += val.substring(0,(val.length % 3));

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    else

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        flag = true;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    for(var i = val.length; i > 0; i = i - 1)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if (i % 3 != 0)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            continue;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        if (flag)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            strTemp += val.substring(val.length - i,val.length - i + 3);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            flag = false;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        else

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            strTemp += THOUSAND_FLAG + val.substring(val.length - i,val.length - i + 3);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    if (strTemp.indexOf(MONEY_FLAG) > 0)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        strTemp = MONEY_FLAG + strTemp.replace(/¥/g,'');

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

    return strTemp;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

// 判斷是否是數字

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

function  isNumber(param)

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    return /\d/.test(String.fromCharCode(param)) ||  (param >= 96 && param <= 105);//加上小鍵盤處理

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

} 4.AjaxSeachPage.aspx

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

<%

釋出一個原創的基于Ajax的通用(組合)查詢(續)

@ Page language="c#" Codebehind="AjaxSeachPage.aspx.cs" AutoEventWireup="false" Inherits="WebUI.AjaxSearchSystem.AjaxSeachPage"  %>

釋出一個原創的基于Ajax的通用(組合)查詢(續)

<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"  >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

< HTML >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

     < HEAD >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < title > 查詢條件 </ title >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < meta  content ="Microsoft Visual Studio .NET 7.1"  name ="GENERATOR" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < meta  content ="C#"  name ="CODE_LANGUAGE" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < meta  content ="JavaScript"  name ="vs_defaultClientScript" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < meta  content ="http://schemas.microsoft.com/intellisense/ie5"  name ="vs_targetSchema" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < base  target ="_self" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < LINK  href ="BasicStyle.css"  type ="text/css"  rel ="stylesheet" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < script  language ="javascript"  src ="AjaxSearchClientScript.js" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

         </ script >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < script  language ="javascript"  src ="Calendar.js" ></ script >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

     </ HEAD >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

     < body  onload ="javascript:addTerm('tbPanel');"  MS_POSITIONING ="GridLayout" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         < form  id ="Form1"  method ="post"  runat ="server" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

             < TABLE  id ="Table1"  style ="Z-INDEX: 101; LEFT: 0px; POSITION: absolute; TOP: 0px"  cellSpacing ="0"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                cellPadding ="0"  width ="100%"  border ="0" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                 < TR >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                     < TD  style ="HEIGHT: 23px"  align ="center" >< asp:button  id ="btnOK"  runat ="server"  CssClass ="redButtonCss"  Text ="确定" ></ asp:button >< INPUT  class ="redButtonCss"  type ="button"  value ="取消"  onclick ="javascript:window.close();" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                     </ TD >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                 </ TR >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                 < TR >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                     < TD  align ="center" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                         < TABLE  id ="tbPanel"  cellSpacing ="0"  borderColorDark ="aliceblue"  cellPadding ="0"  border ="1" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                         </ TABLE >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                     </ TD >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                 </ TR >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                 < TR >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                     < TD  align ="center" ></ TD >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                 </ TR >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

             </ TABLE >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

             < INPUT  id ="transValue"  style ="Z-INDEX: 102; LEFT: 8px; POSITION: absolute; TOP: 64px"  type ="hidden"

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                name ="Hidden1"  runat ="server" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

         </ form >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

     </ body >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

</ HTML >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

AjaxSeachPage.aspx.cs

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Collections;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.ComponentModel;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Data;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Drawing;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Web;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Web.SessionState;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Web.UI;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Web.UI.WebControls;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Web.UI.HtmlControls;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

using System.Text;

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

namespace WebUI.AjaxSearchSystem

釋出一個原創的基于Ajax的通用(組合)查詢(續)

{

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    ///  < summary >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    /// AjaxSeachPage 的摘要說明。

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    ///  </ summary >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    public class AjaxSeachPage : System.Web.UI.Page

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    {

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        protected System.Web.UI.HtmlControls.HtmlInputHidden transValue;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        protected System.Web.UI.WebControls.Button btnOK;

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        public const string SEARCH_WHERE_SESSION = "SearchWhere";

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        private void Page_Load(object sender, System.EventArgs e)

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        {

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            if (!IsPostBack)

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            {

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                try

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                {

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    //tableName.Value = Request.QueryString["table"].Trim();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    transValue.Value = "employee";

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                catch(NullReferenceException ee)

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                {

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                    throw new ArgumentOutOfRangeException("table","參數不正确,請傳入預先定義的表名");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

                }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

                AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxSearchMethod));

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

                this.btnOK.Attributes.Add("OnClick","getCombinTerm()");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        #region Web 窗體設計器生成的代碼

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        override protected void OnInit(EventArgs e)

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        {

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            //

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            // CODEGEN: 該調用是 ASP.NET Web 窗體設計器所必需的。

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            //

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            InitializeComponent();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            base.OnInit(e);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        ///  < summary >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        /// 設計器支援所需的方法 - 不要使用代碼編輯器修改

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        /// 此方法的内容。

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        ///  </ summary >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        private void InitializeComponent()

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        {    

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            this.btnOK.Click += new System.EventHandler(this.btnOK_Click);

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            this.Load += new System.EventHandler(this.Page_Load);

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        #endregion

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        private void btnOK_Click(object sender, System.EventArgs e)

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        {

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            Session[SEARCH_WHERE_SESSION] = transValue.Value.Trim();

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

            Response.Write(ClosePage());

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

        private string ClosePage()

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        {

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            StringBuilder js = new StringBuilder();

釋出一個原創的基于Ajax的通用(組合)查詢(續)
釋出一個原創的基于Ajax的通用(組合)查詢(續)

            js.Append(" < script  language =\"JavaScript\" >

釋出一個原創的基于Ajax的通用(組合)查詢(續)

");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            js.Append("window.close();");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            js.Append(" </ script > ");

釋出一個原創的基于Ajax的通用(組合)查詢(續)

            return js.ToString();

釋出一個原創的基于Ajax的通用(組合)查詢(續)

        }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

    }

釋出一個原創的基于Ajax的通用(組合)查詢(續)

}

釋出一個原創的基于Ajax的通用(組合)查詢(續)

運作效果:

釋出一個原創的基于Ajax的通用(組合)查詢(續)

下載下傳源碼 AjaxGeneralSearch.rar

請大家提出寶貴意見,在此感謝我的同僚 命運有自己的夢!提供的幫助!感謝月曆控件提供者meizz

轉載于:https://www.cnblogs.com/Hedonister/archive/2005/10/19/258228.html

繼續閱讀