質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

AngularJS

AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

Q&A

0回答

2808閲覧

monacaで一覧ページから詳細ページに遷移する際にデータを渡したい

退会済みユーザー

退会済みユーザー

総合スコア0

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

AngularJS

AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

0グッド

1クリップ

投稿2015/12/27 08:35

<概要>
monacaを使ってます。一覧ページのリンクから詳細ページに遷移させる時、そのリンク一つ一つに設定しているデータを引数として渡し詳細ページにもデータを引き継ぎたいです。

<一覧ページについて>
一覧ページではjSONで吐き出したデータをリスト形式で表示させ、それぞれ異なるテキストデータ、異なるURLを設定する予定です。
そうなるように、初心者ながら考えて引数のところを動的になるよう設置しました。

javascript

1<a href='#' onClick='showDetail('" + json[i].url + "', '" + json[i].title + "')'></a>

一覧ページ

document.addEventListener('deviceready',function(){ //Ajax通信 $.ajax({ type: 'GET', url: 'http://json/json.php', dataType: 'json', success: function(json){ var len = json.length; for(var i=0; i < len; i++){ $("#list").append("<airtcle><div><a href='#' onClick='showDetail('" + json[i].url + "', '" + json[i].title + "')'></a></div></article>"); } }, //エラー error: function(XMLHttpRequest, textStatus, errorThrown) { $("#list").append("XMLHttpRequest : " + XMLHttpRequest.status); $("#list").append("textStatus : " + textStatus); $("#list").append("errorThrown : " + errorThrown.message); } }); },false); function showDetail(url, title) { monaca.pushPage("detail.html", {}, {url : url, title : title}) } </script> </head> <body> <ons-navigator title="Navigator" var="myNavigator"> <ons-page> <ons-toolbar> <div class="center">一覧ページ</div> </ons-toolbar> <section id="list">ここにjSONで取得したデータをリスト表示させます。</section> </ons-page> </ons-navigator> </body>

各リストのリンクが設置できた?ところでリストをタップすると
一瞬画面が白くなり詳細ページに行かず、また一覧ページに戻ってきてしまいます。
画面遷移とデータの受け渡しでご教示いただければと思います。
何卒、よろしくお願いいたします。

詳細ページ

javascript

1 <script type="text/javascript"> 2 window.alert(JSON.stringify(monaca.queryParams)); 3 document.write("queryParams is" + JSON.stringify(monaca.queryParams)); 4 </script> 5 </head> 6 <body> 7<ons-page> 8 <ons-toolbar> 9 <div class="left"><ons-back-button>Back</ons-back-button></div> 10 <div class="center">詳細ページ</div> 11 </ons-toolbar> 12</ons-page> 13 </body>

monaca画面遷移について
http://docs.monaca.mobi/2.9/ja/reference/monaca_api/transition/

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/12/27 12:52 編集

対応したいデバイスはなんでしょうか。 リストからのリンクの貼り方などはサンプルがあると思いますが,monacaやonsenUIはフレームワークからそれたことをやろうとすると仕様がかなり悪さをするのでなるべくサンプル通りの実装をすることをお勧めします。(特にonsenuiのAngular.jsのイベントトリガー回りが複雑なので) 問題を切り分けるためにChrome等のデバッガなどを使って monaca.pushPage("detail.html", {}, {url : url, title : title})の行にブレイクポイントを設置して対象のリストをクリックした時にshowDetail関数が実行されるかどうか確認してもらえますでしょうか。 もし実行されないようでしたら,href属性とonclick属性が共存しているのが少し気になります。 もし関数が呼ばれているのに一覧ページにリダイレクトされるのであればファイルのパスを確認したりルーティングファイルなどの設定が必要かもしれません。もしくは関数がurlを見つけられなかった場合自動的にページバックする仕様かもしれません。また,モバイルが対象機器の場合はページ遷移をidやpage-role属性を利用して行っている場合があるのでonsen uiの仕様を確認するといいと思います。
退会済みユーザー

退会済みユーザー

2015/12/27 14:19

tkow 様 この度はご教示誠にありがとうございます。 対応予定デバイスはiOSとAndroidを考えております。 monacaやonsen-uiの仕様で上手くいかないことがあるのですね・・・。 デバッガを使って関数が実行されているか確認してみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問