- ベストアンサー
ebookのXMLの通し番号の数値を変更する方法
- 3000行のXMLに含まれる通し番号の数値を変更する方法を探しています。
- 特定の箇所の数値に50を足すことで変更を行いたいです。
- 使用するPCはWindows XP、Windows 7、Mac Lionです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
まず、前提。 XML ファイルは、なにかルート要素が何かあるはずだよ? <なにかルート要素があるはず> <Content Title="タイトル1" DestPage="000" リンク先_DestPage="010" Level="1"></Content> <Content Title="タイトル2" DestPage="001" リンク先_DestPage="012" Level="1"></Content> <Content Title="タイトル3" DestPage="002" リンク先_DestPage="013" Level="1"></Content> : : : </なにかルート要素があるはず> 以下は手順。 Firefox(試したのはversion 11)で XML ファイルを開いて、 [Ctrl]+[Shift]+[K] で [Web コンソール] を開いて、 下のコードを [Web コンソール] の 「>」 のところに貼り付けて、 (function (nodes) { for (var i=0; i<nodes.length; i++) { var el = nodes.item(i); (function (arr, add) { for (var j=0; j<arr.length; j++) { var get = el.getAttribute(arr[j]); var int = add + parseInt(get, 10); var set = int.toString(); while (set.length<get.length) set = "0"+set; el.setAttribute(arr[j], set); } })(["DestPage", "リンク先_DestPage"], 50); } })(document.getElementsByTagName("Content")); [Enter] キーをおして、 [Web コンソール] の下のページ表示部分をクリックして、 [Ctrl]+[A] で全て選択して 右クリックして、 [選択した部分のソースを表示(E)] を選択。 おしまい。
お礼
遅くなりましたが、 ありがとうございました。