javascriptのsplitが動かない
コンソールに出てきた xxx.split is not a function の文字。
checkboxをjQueryで取得した後に分解して配列にしようとした時に出てきた物だ。
var checked_item; checked_item = $('[class="cls_check_num"]:checked').map(function(){ return $(this).val(); }).get(); if(checked_item.length > 0){ var resArray = checked_item.split(","); ##←←エラー箇所 for(var i=0;i<resArray.length;i++){ alert(resArray[i]+"がチェックされてる"); } }
このsplitをしているチェックボックスのデータに問題がある。
var checked_item; checked_item = $('[class="cls_check_num"]:checked').map(function(){ return $(this).val(); }).get(); if(checked_item.length > 0){ var resArray = (string(checked_item)).split(","); for(var i=0;i<resArray.length;i++){ alert(resArray[i]+"がチェックされてる"); } }
チェックボックスから取得したカンマ区切りの値を明示的に文字列だと宣言すると動く。
おまじないみたいなモノだけどたまにjQueryを触るとこういう細かい所で躓くのでメモ。