Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.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
尝试制作一个纯jquery/javascript聊天机器人;为什么';我的代码不工作吗?_Javascript_Jquery - Fatal编程技术网

尝试制作一个纯jquery/javascript聊天机器人;为什么';我的代码不工作吗?

尝试制作一个纯jquery/javascript聊天机器人;为什么';我的代码不工作吗?,javascript,jquery,Javascript,Jquery,好的,所以我会尽量简短:这是我第一次尝试从零开始独自编写代码,所以请原谅我犯的任何愚蠢的错误,这也是我第一次在这个网站上发帖,也很抱歉格式不好 关于我的问题:我试图制作一个纯粹基于Javascript的聊天机器人,作为概念证明(当然还有吹牛的权利) 我设法让基础知识发挥作用,比如在enter键上检查答案和一个基本的输入/输出系统(这花了我两天的时间,就像我说我是初学者一样),但我缺少的一个关键功能是与分支问题的连续聊天,当然,我一开始尝试使用数组填充wit字符串,但后来选择了基本的'If/els

好的,所以我会尽量简短:这是我第一次尝试从零开始独自编写代码,所以请原谅我犯的任何愚蠢的错误,这也是我第一次在这个网站上发帖,也很抱歉格式不好

关于我的问题:我试图制作一个纯粹基于Javascript的聊天机器人,作为概念证明(当然还有吹牛的权利)

我设法让基础知识发挥作用,比如在enter键上检查答案和一个基本的输入/输出系统(这花了我两天的时间,就像我说我是初学者一样),但我缺少的一个关键功能是与分支问题的连续聊天,当然,我一开始尝试使用数组填充wit字符串,但后来选择了基本的'If/else',就像您在added.js中看到的那样,这里的关键问题是'checkAnswer2'函数!我似乎不知道逻辑问题在哪里!布尔人的部分应该很好用!请帮我调试这乱七八糟的代码

编辑; 好的,多亏了一位好心的评论者(多谢老兄!),语法错误已经被修复了,但这里仍然存在某种逻辑错误,因为函数仍然不能按预期工作/

编辑2.0; 很明显,我忽略了一个非常重要的HTML片段,现在修复了这个问题,并按照这里发布的方式运行代码,所以现在应该可以工作了。(当然,上述问题除外)

$(“#应答字段”).keyup(函数(事件){
如果(event.keyCode==13){
$(“#javascriptButton”)。单击();
}
});
函数updateit(){
var答案=输出;
document.getElementById('story').innerHTML=answer;
};
var输出='问题';
updateit();
document.getElementById('javascriptButton')。onclick=function interpretatAnswer(){
var inputResults=document.getElementById('answerField')。值;
answer=inputResults.toUpperCase();
检查答案();
};
函数checkAnswer(){
如果(回答==“是”){
输出='YESANS';
}
否则如果(回答=“否”){
output=“NOANS”;
}
否则如果(答案=='可能'){
output=“MAYBEANS”;
}
否则{
输出=(“请选择有效答案”);
};
updateit();
};
函数检查应答器2(){
如果(输出=='yessans'&&answer=='YES2'){
输出='YESANS2';
}
else if(输出===“MAYBEANS”&&answer===“MAYBE2”){
输出='MAYBEANS2';
}
如果(输出=='YESANS'&&answer=='YESANS2'){
输出='YESOUT';
}
else if(输出===“MAYBEANS”&&answer===“MAYBEANS2”){
输出='MAYBEOUT';
}
else if(输出=='NOANS'&&answer=='NOANS2'){
输出=‘NOOUT’;
}
else{output=“error”}
updateit();
};

页眉{右边距:50px;字体系列:'Helvetica Neue',无衬线;字体大小:25px;字体重量:粗体;字母间距:-1px;行高:1;页边距顶部:1px;填充:10px;左边距:40px;}
正文{左边距:20px;顶部:50px;背景色:粉蓝;字体系列:arial;}
输入{左侧边距:50px;顶部边距:150px;显示:块;填充:10px;字体大小:14pt;顶部边距:50px;底部边距:50px;}
#列表{左边距:90px}
#javascriptButton{opacity:0;左边距:900px;top:50px;padding:1px;字体大小:1pt;左边距:25px;}
#列表头{font-family:'arial';字体大小:20px;字体重量:粗体;底部空白:45px;左侧空白:60px}

问题:
可能的答案;
  • 大概
提交答案
您有一个带有条件的
else
语句。这应该是一个
否则,如果

else if (output === 'NOANS' && answer === 'NO2') 
{
    output = 'NOANS2';
}

好的,在我修复了语法错误之后(非常感谢您的帮助),代码中出现了一个逻辑错误。该函数不会使我的代码现在变得毫无用处,尽管如果包含了,就是这样!已取得进展3您的HTML中甚至不存在像
story
这样的元素。检查错误的唯一方法是再现您的状态并跟踪错误。这是不可能的,因为一个未完成的测试用例。我又傻了。但这只是一个简单的复制/粘贴错误,所以请不要认为我太愚蠢。如果您键入Yes、No或Maybe,然后按enter键,则应验证答案并输入我分配给它的默认答案!如果你解决了自己的问题,并且认为它可以帮助别人,那么你可以自由地回答自己的问题。