イベントの伝達
親divの要素内容です。
   子供divの要素内容です。      
     孫divの要素内容です。   
   

孫divの要素内容です。
をクリックすると、
孫要素のイベントリスナーです
のアラートがでます。これで終わりかと思ったら、
子要素のイベントリスナーです
のアラートが出て、
親要素のイベントリスナーです
のアラートがでます。
孫をクリックしたら、イベントが孫から子供へそして親へ伝達されています。この伝達が、
<input type="checkbox" id='id1' value="3000" onclick="myfunc()">TWELITE Red 3,000円<br>
や、
document.getElementById('btn').onclick = function(){

との違いです。上記の2つは応答する関数が1つだけで伝達はありません。 以下ソースです。
<!DOCTYPE html>
<html>
<head>
  <meta charset='UTF-8' />
  <title>sample</title>
  <script>
    function load() {
      document.getElementById('parent').addEventListener('click', function(){
        window.alert('親要素のイベントリスナーです');
      }, false);
      document.getElementById('child').addEventListener('click', function(){
        window.alert('子要素のイベントリスナーです');
      }, false);
      document.getElementById('grandchild').addEventListener('click', function(){
        window.alert('孫要素のイベントリスナーです');
      }, true);
    }
    document.addEventListener("DOMContentLoaded", load, false);
  </script>
</head>
<body>
<div id="parent">
親divの要素内容です。
	<div id="child">
   子供divの要素内容です。
     <div id="grandchild">
     孫divの要素内容です。
      </div>
   </div>
</div>
</body>
</html>

addEventListener(type, listener, useCapture)
useCaptureの値
孫をクリックした場合の伝達順序(3列)
false
子供 false 子供
false

false
子供 false 子供
true

false 子供
子供 true
false

false 子供
子供 true
true

true
子供 false
false 子供

true
子供 false
true 子供

true
子供 true 子供
false

true
子供 true 子供
true

孫はtrueでもfalseでも伝達に影響を与えません。
孫から親への伝達方向はバブリングフェーズといいます。
親から孫への伝達方向はキャプチャーフェーズといいます。