Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.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 针对RegExp的内部站点搜索Jquery_Javascript_Jquery_Regex_Search_Internal - Fatal编程技术网

Javascript 针对RegExp的内部站点搜索Jquery

Javascript 针对RegExp的内部站点搜索Jquery,javascript,jquery,regex,search,internal,Javascript,Jquery,Regex,Search,Internal,我哪里做错了?哪怕是一个错误都会有帮助 我有一个HTML输入和一个提交按钮。其想法是: 提交搜索字符串 获取字符串值 将字符串值与正则表达式进行比较 如果合法,则在DOM中查找字符串的实例 然后滚动到位于DOM中的匹配字符串的第一个实例 $("#submit").on("click", function () { //regex to be compared against var search = new RegExp(); search = /(^\w[A-z]+

我哪里做错了?哪怕是一个错误都会有帮助

我有一个HTML输入和一个提交按钮。其想法是:

  • 提交搜索字符串
  • 获取字符串值
  • 将字符串值与正则表达式进行比较
  • 如果合法,则在DOM中查找字符串的实例
  • 然后滚动到位于DOM中的匹配字符串的第一个实例

    $("#submit").on("click", function () {      
    //regex to be compared against
        var search = new RegExp();
        search = /(^\w[A-z]+)$|(^\d[0-9\.x\.X\.m\.M]+)/;
    
        //grab the string value from the search input
        var userin = $("#searchin").val();
        var compare = userin.test(search);
    
        if (compare === true) {
            var treebody = $('html, body').contents().filter(function (userin) {
                if ($('html, body').contents() === userin) {
                    $('html, body').animate({'scrollTop' : $(treebody).position().top}, 700)
    
                } else {
                    alert("Please search again or scroll down to find your desired content");
                } 
            });
        } else {
            alert("Sorry, we couldn't match your search. Please try a region or place or a billboard size e.g. 9x13 ");
        }
    });
    
  • 换线

    var compare = userin.test(search);
    
    应该是

    var compare = search.test(userin);
    
    还要检查正则表达式。这是一个很好的参考。

    更改行

    var compare = userin.test(search);
    
    应该是

    var compare = search.test(userin);
    

    还要检查正则表达式。这是一个很好的参考资料。

    1<代码>[A-z]+2。使用
    m
    修饰符。你的正则表达式看起来很奇怪。它是“一个字母、一个数字或一个下划线后跟一个或多个字母”或“一个数字后跟一个数字、点、x、点、x或点……一次或多次”。例如,所有重复的点都不起作用。但这不应该破坏代码<代码>[A-z]+2。使用
    m
    修饰符。你的正则表达式看起来很奇怪。它是“一个字母、一个数字或一个下划线后跟一个或多个字母”或“一个数字后跟一个数字、点、x、点、x或点……一次或多次”。例如,所有重复的点都不起作用。但这不应该破坏代码。