Javascript jquerymobile中的URL检查

Javascript jquerymobile中的URL检查,javascript,android,cordova,jquery-mobile,Javascript,Android,Cordova,Jquery Mobile,我正在为手机制作一个浏览器应用程序,它可以获取URL并浏览它,并且工作正常。现在,我想在执行任何操作之前检查用户输入的文本 第一优先级:URL检查,无论其格式是否正确 第二优先级:如果它不是一个URL,那么它应该使用相同的关键字进行谷歌搜索 我对URL是否为空进行了验证。但我想执行上述任务,如果它不是一个URL,我将重定向到谷歌搜索 有人能帮助我们如何使用JQuery Mobile检查URL吗 这是我的密码: <script type="text/javascript" charset="

我正在为手机制作一个浏览器应用程序,它可以获取URL并浏览它,并且工作正常。现在,我想在执行任何操作之前检查用户输入的文本

第一优先级:URL检查,无论其格式是否正确

第二优先级:如果它不是一个URL,那么它应该使用相同的关键字进行谷歌搜索

我对URL是否为空进行了验证。但我想执行上述任务,如果它不是一个URL,我将重定向到谷歌搜索

有人能帮助我们如何使用JQuery Mobile检查URL吗

这是我的密码:

<script type="text/javascript" charset="utf-8">

    document.addEventListener('deviceready',onDeviceReady, false);

    function onDeviceReady() {
        navigator.notification.prompt(
            'Please enter the URL you want to browse', //massage
            onPrompt,   // callback to invoke
            'URL',      // title
            ['Ok','Exit']   //buttonLabels
        );
    }

    var ref=null;

    function onPrompt(results){
        if(results.input1==""||results.input1==null)
            onDeviceReady();
        else
            ref = window.open('http://'+results.input1, '_blank', 'location=yes');

        ref.addEventListener('loadstart', iLoadStart);
        ref.addEventListener('loadstop', iLoadStop);
        ref.addEventListener('loaderror', iLoadError);
        ref.addEventListener('exit', iLoadClose);
    }
</script>

文件。添加的监听器('deviceready',onDeviceReady,false);
函数ondevicerady(){
navigator.notification.prompt(
'请输入您要浏览的URL',//
onPrompt,//要调用的回调
“URL”,//标题
['Ok','Exit']//按钮标签
);
}
var ref=null;
函数onPrompt(结果){
if(results.input1==“”| | results.input1==null)
ondevicerady();
其他的
ref=window.open('http://'+results.input1',_blank','location=yes');
参考addEventListener('loadstart',iLoadStart);
参考addEventListener(“加载停止”,iLoadStop);
参考addEventListener('loaderror',iLoadError);
参考addEventListener(“退出”,iLoadClose);
}

谢谢!:)

您可以使用正则表达式来测试
results.input1
的内容

var urlregex = new RegExp("URL test regex");
if(urlregex.test(results.input1)) {
    // Go to URL
}
else
{
    // Google Search
}
(我对我的Javascript有点生疏,不确定它是否能编译)

根据,这是一个很好的URL正则表达式:

(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:/~\+#]*[\w\-\@?^=%&amp;/~\+#])?

var urlregex=new RegExp(((http ^ ftp ^ https):\/\/[\w\-\\+(\.[\w\-\\\+)+([\w\-\,@?^=%&;:/\+\\\\\\\]*[\w\-\\\\\\\\\\\\\\\\\\\\+]);函数onPrompt(results){if(results.input1==“”| | | | results.input1==null){if(!urlregex.test(results.input1)){ondevicerady();}}否则{ref=window.open('http://'+results.input1',u blank',location=yes;}}}
我编辑了代码并这样做,但控制台显示了错误“无效的正则表达式”。抱歉!我不习惯使用正则表达式,请检查一次好吗?嗯,我在提交之前没有测试过正则表达式,但它的工作原理是。请尝试删除正则表达式的最后一部分并逐字符添加它。有关正则表达式的介绍,请检查