teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2017/01/14 12:57

投稿

退会済みユーザー
answer CHANGED
@@ -8,4 +8,49 @@
8
8
  var d = ('00' + dt.getDate()).slice(-2);
9
9
  var res = y + '.' + m + '.' + d;
10
10
  console.log(res);
11
+ ```
12
+
13
+ ---
14
+
15
+ #追記
16
+
17
+ ```javascript
18
+ function formatDt(dt_string) {
19
+ var dt = new Date(dt_string);
20
+ var y = dt.getFullYear();
21
+ var m = ('00' + (dt.getMonth() + 1)).slice(-2);
22
+ var d = ('00' + dt.getDate()).slice(-2);
23
+ return y + '.' + m + '.' + d;
24
+ }
25
+
26
+ $.ajax({
27
+ url: 'http://xxxx/blog/?feed=rss2',
28
+ type: 'get',
29
+ dataType: 'xml',
30
+ timeout: 5000,
31
+ success: function (xml, status) {
32
+ if (status === 'success') {
33
+ var row = 0;
34
+ var data = [];
35
+ var nodeName;
36
+ $(xml).find('item').each(function () {
37
+ data[row] = {};
38
+ $(this).children().each(function () { // 子要素を取得
39
+ nodeName = $(this)[0].nodeName; // 要素名
40
+ data[row][nodeName] = {}; // 初期化
41
+ attributes = $(this)[0].attributes; // 属性を取得
42
+ for (var i in attributes) {
43
+ data[row][nodeName][attributes[i].name] = attributes[i].value; // 属性名 = 値
44
+ }
45
+ data[row][nodeName]['text'] = $(this).text();
46
+ });
47
+ row++;
48
+ });
49
+ $('#rss').wrapInner('<ul></ul>');
50
+ for (i in data) {
51
+ $('#rss').find('ul').append('<li><p>' + formatDt(data[i].pubDate.text) + '</p><a href="' + data[i].link.text + '">' + data[i].title.text + '</a></li>');
52
+ }
53
+ }
54
+ }
55
+ });
11
56
  ```