選択範囲をwassrのToDoに登録するブックマークレット

というのを作った↓

javascript:(function(){var w=window,d=w.document,s='';if(d.selection){s=d.selection.createRange().text}else if(d.getSelection){s=d.getSelection()}else if(w.getSelection){s=w.getSelection()};var url='http://api.wassr.jp/todo/add.json';var frm=document.createElement('form');frm.action=url;frm.method='POST';frm.target='postToWassr';document.body.appendChild(frm);var tag=document.createElement('input');tag.setAttribute('type','hidden');tag.setAttribute('name','body');tag.setAttribute('value',s);frm.appendChild(tag);var pfr=document.createElement('iframe');pfr.style.display='none';pfr.name='postToWassr';pfr.src='about:blank';var cnt=0;var onload=pfr.onload=function(){if(cnt++==0){setTimeout(function(){frm.submit();},0);}else{frm.parentNode.removeChild(frm);pfr.parentNode.removeChild(pfr);}};if(document.all)pfr.onreadystatechange=function(){if(this.readyState=='complete'){pfr.contentWindow.name=pfr.name;onload();}};document.body.appendChild(pfr);})()

ああ、文字コードをそろえないとだめか。

5/11追記 JSだけで文字コード変換してしまうライブラリ(http://nurucom-archives.hp.infoseek.co.jp/digital/escape-codec-library.html。すげー)をブックマークレットに突っ込んでしまおうと思ったが挫折した。iframe使ってるところでどうこうすれば使えそうだけど。これはサーバサイドかます方がはやいか。