检查文本文件是否包含带有javascript的内容
Check if text file contains something with javascript?
如何检查服务器上的文件是否包含特定文本?到目前为止,这就是我所做的:
<script type="text/javascript" src="jquery-2.1.3.min.js"></script>
<script type="text/javascript">
$.get('myfile.txt', function(data) {
if (data == "Hello World") {
alert("Hello World is found");
}
else {
alert("It's NOT found");
}
}, 'text');
</script>
这是myfile.txt
:
Blah blah blah
It's a good day.
Have a nice day everyone.
Hello World.
即使文件包含Hello World
该脚本也会不断返回It's NOT found
我该如何解决这个问题?
更新:这个答案有效,但现在我想用setInterval
每秒检查一次,但在我摆脱Hello World
后它不起作用myfile.txt
即使它不再存在,它仍然显示Hello World is found
。这是我所做的:
<script type="text/javascript" src="jquery-2.1.3.min.js"></script>
<script type="text/javascript">
setInterval(function(){
$.get('myfile.txt', function(data) {
if (data.indexOf("Hello World")>-1){
document.write("Hello World is found");
}
else {
document.write("It's NOT found");
}
}, 'text');}, 1000);
</script>
更新2:这是我对@Stuart答案的回应的代码
setInterval(function() {
$.ajax({
cache:false,
$.get("myfile.txt"
success: function(result) {
if (result.indexOf("Hello World")>-1){
document.write("Hello World is found");
}
else {
document.write("It's NOT found");
}
}
)
})
});
在我的控制台上,它说:
Uncaught SyntaxError: Unexpected token .
我该如何解决这个问题?对不起,我还在学习Javascript
更新 3:
<script type="text/javascript" src="jquery-2.1.3.min.js"></script>
<script type="text/javascript">
setInterval(function(){
$.get('myfile.txt',{cache:false} function(data) {
if (data.indexOf("Hello World")>-1){
document.write("Hello World is found");
}
else {
document.write("It's NOT found");
}
}, 'text');}, 1000);
</script>
我在控制台中得到这个:Uncaught SyntaxError: missing ) after argument list
,我的浏览器没有显示任何内容。
您正在检查整个文本是否等于字符串"Hello world"。
使用 String.indexOf,如下所示:
$.get('myfile.txt', function(data) {
if (data.indexOf("Hello world") !== -1) {
alert("Hello World is found");
}
else {
alert("It's NOT found");
}
}, 'text');
顺便说一下,javascript的黄金法则:控制台.log一切。然后,您将了解结构和jQuery创建响应对象的方式,例如,在尝试调试时不要使用alert。
使用 indexOf 而不是 ==。您正在测试整个文本是否等于hello world。
if (textdata.indexOf(stringToFind)>-1){ do stuff }
编辑,问题已变形,代码示例:
function getTextfile()
{
$.get('myfile.txt', {cache:false}, function(data)
{
if (data.indexOf("Hello World")>-1) {
document.write("Hello World is found");
}
else {
document.write("It's NOT found");
}
setTimeout(getTextfile, 1000);
});
}
getTextfile();
相关文章:
- 每天用javascript包含不同的php文件
- 将插件制作的Javascript包含到html按钮中
- HTML标记,包含带引号的JavaScript代码中的引号
- 如何将JavaScript包含在页眉MVC4中
- Cloudflare-PHP和Javascript包含不工作
- 如果在数组中发现重复,则必须通过纯javascript添加带关键字的索引
- onclick上的javascript包含文件
- 如何在javascript中测试字符串是否包含带正则表达式的数字
- Javascript中带点的图像源
- 用javascript(不带外部文件)将html加载到另一个html中
- 解析包含带$Parse的点字符的字段名称
- 使用Javascript(不带jquery)触发Anchor链接上的链接
- 使用DOM javascript包含文本和图片的按钮
- Javascript-包含变量的多个数组
- 用Ruby/Javascript解码带引号的可打印字符串
- 对于列表中包含带文本的跨度的每个li,请从该li中删除另一个跨度
- Javascript:包含随机()启动
- 带字符串的正则表达式包含Javascript中带通配符/最小值、最大长度的数字
- php&包含带双引号的字符串的javascript警报
- 如何在JavaScript中对包含带字母和数字的字符串的数组进行排序