Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 搜索脚本没有';不要寻找单个单词_Javascript_Search - Fatal编程技术网

Javascript 搜索脚本没有';不要寻找单个单词

Javascript 搜索脚本没有';不要寻找单个单词,javascript,search,Javascript,Search,我正在使用下面的脚本搜索我的HTML站点 我遇到的问题是,当我希望它在整个XML中独立搜索单词时,它将单词作为一个短语一起搜索。i、 e.如果有人输入“数字制作人”,则搜索“数字制作人”,而不是单独搜索“数字”和“制作人” 如果您有任何帮助,我们将不胜感激 $(document).ready(function(){ //GLOBAL VAR var XMLSource = $('#data').attr('xmlData'); var keyword = ''; var catType = '

我正在使用下面的脚本搜索我的HTML站点

我遇到的问题是,当我希望它在整个XML中独立搜索单词时,它将单词作为一个短语一起搜索。i、 e.如果有人输入“数字制作人”,则搜索“数字制作人”,而不是单独搜索“数字”和“制作人”

如果您有任何帮助,我们将不胜感激

$(document).ready(function(){

//GLOBAL VAR
var XMLSource = $('#data').attr('xmlData');
var keyword = '';
var catType = '';
var pub = '';

var i = 0;

$("#searchButton").click(function() {
    keyword = $("input#term").val();
    catType = $("#category option:selected").val();

    //Reset any message
    var errMsg = '';
    pub = '';

    if ( keyword == '' ) { errMsg += 'Please Enter Search Term' + '\n'; }
    else if ( catType == 'none' ) { errMsg += 'Please Select Category' + '\n'; }
    else { searchThis(); }

    if ( errMsg != '' ) {
        pub += '<div class="error">' + '\n';
        pub += errMsg;
        pub += '</div>' + '\n';
    }

    //Show error
    $('#result').html( pub );

});

function searchThis() {             
    $.ajax({
        type: "GET",
        url: XMLSource,
        dataType: "xml",
        success: function(xml) { loadPublication (xml) }    
    });
}

function loadPublication (xmlData) {
    i = 0;
    var row;

    var searchExp = "";

    $(xmlData).find('Job').each(function(){

        var SearchTitle = $(this).find('SearchTitle').text();
        var Description = $(this).find('Description').text();
        var EmailTo = $(this).find('EmailTo').text();

        //Format the keyword expression
        var exp = new RegExp(keyword,"gi");

        //Check if there is a category selected; 
        //if not, use EmailTo column as a default search
        if ( catType == 'SearchTitle' ) { searchExp = SearchTitle.match(exp); }
        else if ( catType == 'Description' ) { searchExp = Description.match(exp); }
        else if ( catType == 'EmailTo' ) { searchExp = EmailTo.match(exp); }

        if ( searchExp != null ) {

            //Start building the result
            if ((i % 2) == 0) { row = 'even'; }
            else { row = 'odd'; }

            i++;                

            pub += '<tr class="row ' + row + '">' + '\n';
            pub += '<td valign="top" class="col1">' + SearchTitle + '</td>' + '\n'; 
            pub += '<td valign="top" class="col2">' + Description + '</td>' + '\n'; 
            pub += '<td valign="top" class="col3">' + EmailTo + '</td>' + '\n'; 
            pub += '</tr>' + '\n';
        }   
    });

    if ( i == 0 ) {
        pub += '<div class="error">' + '\n';
        pub += 'No Result Found' + '\n';    
        pub += '</div>' + '\n';

        //Populate the result
        $('#result').html( pub );
    }
    else {
        //Pass the result set
        showResult ( pub );
    }
}

function showResult (resultSet) {

    //Show the result
    pub = '<table id="grid" border="0">' + '\n';
    pub += '<thead><tr>' + '\n';
    pub += '<th class="col1">Job Title</th>' + '\n';
    pub += '<th class="col2">Job Description</th>' + '\n';
    pub += '<th class="col3">Apply To</th>' + '\n';
    pub += '</tr></thead>' + '\n';
    pub += '<tbody>' + '\n';

    pub += resultSet;

    pub += '</tbody>' + '\n';
    pub += '</table>' + '\n';

    //Populate 
    $('#result').html(pub)

    $('#grid').tablesorter(); 
}
});
$(文档).ready(函数(){
//全局变量
var XMLSource=$('#data').attr('xmlData');
var关键字=“”;
var catType='';
var-pub='';
var i=0;
$(“#搜索按钮”)。单击(函数(){
关键字=$(“输入项”).val();
catType=$(“#类别选项:选定”).val();
//重置任何消息
var errMsg='';
pub='';
如果(关键字=''){errMsg+='请输入搜索词'+'\n';}
否则,如果(catType='none'){errMsg+='请选择类别'+'\n';}
else{searchThis();}
如果(errMsg!=''){
pub+=''+'\n';
pub+=errMsg;
pub+=''+'\n';
}
//显示错误
$('#result').html(pub);
});
函数searchThis(){
$.ajax({
键入:“获取”,
url:XMLSource,
数据类型:“xml”,
成功:函数(xml){loadPublication(xml)}
});
}
函数loadPublication(xmlData){
i=0;
var行;
var searchExp=“”;
$(xmlData).find('Job').each(function(){
var SearchTitle=$(this.find('SearchTitle').text();
var Description=$(this.find('Description').text();
var EmailTo=$(this.find('EmailTo').text();
//设置关键字表达式的格式
var exp=新的RegExp(关键字“gi”);
//检查是否选择了一个类别;
//如果没有,请使用EmailTo列作为默认搜索
如果(catType='SearchTitle'){searchExp=SearchTitle.match(exp);}
else if(catType=='Description'){searchExp=Description.match(exp);}
else if(catType=='EmailTo'){searchExp=EmailTo.match(exp);}
if(searchExp!=null){
//开始建立结果
如果((i%2)==0){row='even';}
else{row='odd';}
i++;
pub+=''+'\n';
pub+=''+SearchTitle+''+'\n';
pub+=''描述+''+'\n';
pub+=''+电子邮件发送至+''+'\n';
pub+=''+'\n';
}   
});
如果(i==0){
pub+=''+'\n';
pub+='未找到结果'+'\n';
pub+=''+'\n';
//填充结果
$('#result').html(pub);
}
否则{
//通过结果集
showResult(pub);
}
}
函数showResult(结果集){
//显示结果
pub=''+'\n';
pub+=''+'\n';
发布+='职务'+'\n';
pub+='职务说明'+'\n';
pub+='应用于'+'\n';
pub+=''+'\n';
pub+=''+'\n';
pub+=结果集;
pub+=''+'\n';
pub+=''+'\n';
//填充
$('#result').html(发布)
$(“#网格”).tablesorter();
}
});

因为您使用的是正则表达式,所以可以用OR运算符替换原始搜索字符串中的所有空格(因为您使用的是正则表达式,所以可以用OR运算符替换原始搜索字符串中的所有空格
(