簡體   English   中英

HTML如何基於javascript函數的返回值限制文本輸入?

[英]How is HTML restricting text input based on the return value of a javascript function?

我在這里閱讀答案,它們似乎都遵循着我無法理解的相似主題,而且我不知道自己在尋找什么以嘗試和搜索它。

它們都有onkeypress這種模式,返回somefunction ,並且somefunction通常返回布爾值。

我不知道這其中的哪一部分正在執行實際限制。 返回值? 網絡瀏覽器? HTML?

如何?

這些都沒有任何意義。 我對javascript的理解使我為此感到困惑。 我無法掌握正在做什么。 為什么返回falsetrue根本沒有任何作用?

如果有人能指出正確的方向,我將非常感激。 我發現的很多資源要么是什么是數組以及如何聲明變量,要么直接跳轉到解決方案。 我只是想弄清楚這些解決方案中正在發生什么。

這是模式:

<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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM