[英]How is HTML restricting text input based on the return value of a javascript function?
我在這里閱讀答案,它們似乎都遵循着我無法理解的相似主題,而且我不知道自己在尋找什么以嘗試和搜索它。
它們都有onkeypress
這種模式,返回somefunction
,並且somefunction
通常返回布爾值。
我不知道這其中的哪一部分正在執行實際限制。 返回值? 網絡瀏覽器? HTML?
如何?
這些都沒有任何意義。 我對javascript的理解使我為此感到困惑。 我無法掌握正在做什么。 為什么返回false
或true
根本沒有任何作用?
如果有人能指出正確的方向,我將非常感激。 我發現的很多資源要么是什么是數組以及如何聲明變量,要么直接跳轉到解決方案。 我只是想弄清楚這些解決方案中正在發生什么。
這是模式:
<input type="text" onkeypress="return somefunction()">
<script>
function somefunction()
{
return false;
}
</script>
<input type="text" onkeypress="return somefunction2()">
和js
function somefunction2()
{
return false;
}
次要的,為什么它在腳本標記中但不在附帶的jsfile中時,為什么在jsfiddle中起作用?
JavaScript事件處理程序會在執行默認瀏覽器行為之前觸發。 在事件處理程序內部返回false
可以防止發生默認行為。 它還可以阻止事件從事件鏈冒泡到祖先元素。 在您的示例中,當文本輸入具有焦點時按一個鍵將防止該鍵的字符附加到輸入值上。
這里有一些進一步的閱讀: event.stopPropagation和event.preventDefault有什么區別?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.