ここに JQuery の奇妙な問題があります。明らかに、空の自己終了 XML タグの値を取得しようとすると、想定どおりに空の文字列が返されるのではなく、末尾にスペースがいくつかある次のタグの値が返されます。たとえば、次の XML があります。
<?xml version="1.0" encoding="UTF-8"?>
<results>
<row>
<id>3188</id>
<account_id>840</account_id>
<paid_to_date/>
<nickname>Nick Name</nickname>
<unit_code>013226005918194</unit_code>
<time_stamp>2013-08-14 15:34:30.0</time_stamp>
<time_zone>Europe/Budapest</time_zone>
<sim_id>68</sim_id>
<response_mode>1</response_mode>
<response_email>johndoe@whatever.com</response_email>
<response_phone/>
<user_name>johndoe</user_name>
</row>
</results>
これで response_phone の値を取得しようとしています:
$(xml).find('response_phone').text()
返されるものは次のとおりです。
" johndoe "
なぜこれが起こるのか、それを正しくする方法はありますか? XML はサーバーから送信されるため、変更できません。ありがとう。