我正在學習如何創建一個非常簡單的 HTML、CSS 和 JS 聊天機器人,我遇到了一些麻煩,希望有人能幫我解決。
當我輸入 "Hey "時,它如愿以償地輸出了 "Hello!",但當我嘗試 "測驗鏈接 "的回應時,我卻不知道如何顯示它。有什么想法,我可能做錯了什么?澄清一下,當用戶輸入 "測驗鏈接 "時,我希望它能輸出 "我可以幫助你找到你要找的東西。點擊這里!","點擊這里!"是一個指向google.com.
的鏈接。如果有任何幫助,我們將不勝感激!
<script>。
function talk(){
var know = {
"Hey": "Hello!",
"測驗鏈接":"我可以幫助你找到你正在尋找的東西。 " <a href="https://www. google.com/">點擊這里!</a>
};
var user = document.getElementById('userBox'/span>).value。
document.getElementById('chatLog')。 innerHTML = user "<br>"。
if(user in know){
document.getElementById('chatLog') 。 innerHTML = know[user] "<br>"/span>;
}else{
document.getElementById('chatLog')。 innerHTML = "I do not understand." ;
}
}
</script>
uj5u.com熱心網友回復:
你的測驗鏈接值不是一個單一的字串,因為你的引號沒有圍繞整個屬性值。試試這個。
uj5u.com熱心網友回復:
你不能在不轉義的情況下嵌套相同的引號或使用模板字面(反斜線)
"test link"。`我可以幫助你找到你正在尋找的東西。<a href="https://www. google.com/">點擊這里!</a>`。請看我下面的代碼段中的作業實體:
我推薦使用事件監聽器而不是點擊處理程式
如果你包裹在一個表單中,回車將運行該函式
在欄位中輸入test link以查看鏈接
const know = {
"hey"。"Hello! 輸入<span class="cursive">測驗鏈接</span>以查看鏈接"。
"測驗鏈接"。`I can help you find what you're looking for. <a href="https://www.google.com/">Click Here! </a>`。
};
window。 addEventListener("load", function() { // when page loads
document.getElementById("testForm"/span>)。 addEventListener("submit", function(e) { // pass the event
e.preventDefault(); //所以我們可以阻止提交。
const user = document.getElementById('userBox') 。 value.toLowerCase(); //處理hey AND HEY 和 Hey。
document.getElementById('chatLog') 。 innerHTML = user "<br>"。
if (user in know) {
document.getElementById('chatLog') 。 innerHTML = know[user] "<br>"/span>。
} else {
document.getElementById('chatLog') 。 innerHTML = "I do not understand." ;
}
})
})
.cursive { color: red; font style: italic; }
<form id="testForm"> /span>
< input type="text" id="userBox" />
</form>
<div id="chatLog"/span>> </div>
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/309256.html
標籤:
