JavaScript 唯讀的欄位 要怎麼傳值

HTML 的 Select、Input 可以設定資料不可修改(唯讀),屬性值如下:

  • Select:disabled
  • Input:readonly

但是會遇到 form 要傳送資料時,Input 能收到資料,但是 Select 收不到資料的問題,要怎麼解決呢?

閱讀全文〈JavaScript 唯讀的欄位 要怎麼傳值〉

PHP 強制使用「強型態」的模式

PHP 7 之後,function、Class 等等都可以指定型態、回傳的型態,但是雖然寫 int,傳進來還是可以傳 float,要怎麼強制型態不對就直接出錯誤呢?

function 指定型態完整寫法

  1. <?php
  2. function sum(int $a, int $b): int
  3. {
  4. return $a + $b;
  5. }
  6. function avg(int $a, int $b): float
  7. {
  8. return ($a + $b) / 2;
  9. }
  10. // Class
  11. class C {}
  12. class D extends C {}
  13. function f(C $c)
  14. {
  15. echo get_class($c)."\n";
  16. }
  17. f(new C); // C
  18. f(new D); // D
  19. ?>

PHP 的型態:PHP: Type declarations

閱讀全文〈PHP 強制使用「強型態」的模式〉

PHP 於 CLI 吃 URL 參數 給 $_GET 使用

PHP 於 CLI 界面,想要將網址的參數丟進去,然後讓 $_GET 直接吃到,該怎麼做呢?

註:使用情境在於網頁程式寫好,但是想要測試的時候,於 CLI 想要使用同樣頁面來做測試,可以這樣子做。

閱讀全文〈PHP 於 CLI 吃 URL 參數 給 $_GET 使用〉

前端 Tooltip 一步一步教學的工具套件

網頁、App 常常都會有頁面介紹,會將頁面區塊框一個框框,然後旁邊秀出說明或者教學。

這些通常會在 HTML 元素旁邊,使用 tooltip 的方式秀出來,這次介紹的套件,就是秀出來外,加上循環順序的設定,就可以做出一步一步的教學等效果。

閱讀全文〈前端 Tooltip 一步一步教學的工具套件〉

將 \x 開頭編碼的資料使用 HTTP POST 傳送與接收

\x 開頭編碼是 16進位的數字,可以直接轉成一般文字輸出,可詳見此篇:將 \x 開頭編碼的資料轉成中文輸出

但是想要將 \x 於 html input / textarea 傳送,再用 $_GET、$_POST 等接收 並且做轉換,要怎麼做呢?

閱讀全文〈將 \x 開頭編碼的資料使用 HTTP POST 傳送與接收〉

使用 flat 來將 JavaScript Array 快速攤平

JavaScript 的 Array 裡面有很多層級(多維陣列),想要全部都攤平成一個一維陣列(flatten),可以怎麼做呢?

  • 註:此篇使用到的 flat(),IE 不支援。

閱讀全文〈使用 flat 來將 JavaScript Array 快速攤平〉

瀏覽器的 console log 幾種不同呈現方式

瀏覽器在 Debug 常常使用 console.log(),除了 console.log 外,還有沒有更多的參數可以使用呢?

  • console.log():標準的文字
  • console.error():出現紅字錯誤文字 和 錯誤的 X
  • console.warn():出現黃色警告文字 和 警告的 !
  • console.table():可於 console 出現表格
  • 客製化 console.log:(前景綠字、背景黃色、24px 字體大小)
    1. (() => {
    2. console.log('%c%s', 'color: green; background: yellow; font-size: 24px;','Success!')
    3. })();

詳見此篇:Better console.logs