在我的应用中,我使用用户提交的文本输入来设置用户名。我们现在需要的另一个功能是能够稍后收到电子邮件并将其存储为变量。我尝试了几种不同的想法让它发挥作用,其中一些是:
但无论我试图尝试什么,它总是设置我的用户名变量,然后自动发送跟进消息。用户流程应为:
Bot说你好/要求提供一个名字
用户输入名称 - 设置为用户名var
Bot说你好+用户名,然后要求发送电子邮件
用户输入电子邮件 - 设置为电子邮件var
我的问题在第4步仍然存在,我尝试设置电子邮件变量。几乎所有输入到所述输入的内容都被视为用户名。
我的代码
获取用户名(加载时调用)
function get_username(){
send_msg("Hello I'm Mumbles, the Help Bot", function(){
send_msg("Who am I speaking with today?")
});
}
设置用户名变量
function ai(msg){
if (username.length < 3){
username = msg;
send_msg('Nice to meet you '+username+'.', function(){
send_msg("One more thing, could you enter your email below?")
});
}
}
点击
更新上传状态$('#sendMsg').click(function(){
var userName = "<span class='username'> Me: </span>";
var newMsg = $('#message').val();
$('#message').val('');
var prevState = $('#conversation').html();
if (prevState.length > 3){
prevState = prevState + '<br />';
}
$('#conversation').html(prevState + userName + newMsg);
ai(newMsg);
$('#conversation').scrollTop($('#conversation').prop('scrollHeight'));
});
与要求发送电子邮件相关的代码
} else if (b_val == "my_practicum") {
send_msg("What is the email address you submitted your practicum with? By having this we can give you a status update!" , function() {
$("#message").show();
$('button.message-tools').val('email_submitted');
$("#sendMsg").click(function() {
var email = msg;
console.log(email);
});
});
}
要查看我的代码的极少数示例,请查看 this fiddle 。
要在试图捕获电子邮件时查看该版本,请查看 this fiddle 。
感谢您的帮助!