以下のHTMLがあって、onClickイベントでテキストの値を取得してきて、処理する場合があったとする。
<td class="edit">
15:00
</td>
var numTd = $("tbody td.edit");
numTd.click(function(){
orgVal = $(this).text();
〜〜〜以下、処理が続く〜〜〜
}
すると、orgValの値が"15:00 "と最後にスペースが入ってしまう。
このせいで、時刻チェック関数で不正な時刻として弾かれてて困っていた。
何で、スペースが入るんだ??試行錯誤した結果以下のように改行を含まないようにすればスペースがなくなった。
<td class="edit">15:00</td>
改行がスペースになったのかな?
軽く調べてみると、jQueryでのhtml()とtext()の挙動がIEだと違う模様。前者は改行コードが取り払われ、後者は改行コードがそのまま付いくるらしい。この改行コードが邪魔してたんだな。
こういうの知らないと意外とはまる。。。