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

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

新規登録して質問してみよう
ただいま回答率
85.48%
ニフティクラウドmobile backend

ニフティクラウドmobile backend (mBaaS)はニフティが提供するBaasサービスです。プッシュ通知、データストア、ファイルストア、会員管理・認証機能などのバックエンド機能をクラウドから提供しています。 Andoird/iOS/JavaScript/Unityと各種SDKに対応しています。

JavaScript

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

Monaca

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

Q&A

解決済

1回答

2952閲覧

ニフティクラウドMobileBackendのデータストアにデータを保存する

退会済みユーザー

退会済みユーザー

総合スコア0

ニフティクラウドmobile backend

ニフティクラウドmobile backend (mBaaS)はニフティが提供するBaasサービスです。プッシュ通知、データストア、ファイルストア、会員管理・認証機能などのバックエンド機能をクラウドから提供しています。 Andoird/iOS/JavaScript/Unityと各種SDKに対応しています。

JavaScript

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

Monaca

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

0グッド

0クリップ

投稿2015/10/28 05:44

編集2015/10/30 08:39

###実現したいこと

JavaScrptでMonacaを使ってシステムを作っています。
システムの内容としては、件名、内容、回答1、回答2、回答3を打ち込み、これらをNCMBに保存したいです。

NCMBにデータを保存できるようにはなったのですが、打ち込んだテキストは保存されず、空のデータが保存されてしまいます。

どうかご教授よろしくお願いします。

###発生しているエラーメッセージ

deviceready has not fired after 5 seconds.

###ソースコード

<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, maximum-scale=1, user-scalable=no"> <link rel="stylesheet" href="css/style.css"> <link rel="stylesheet" href="components/loader.css"> <script src="components/loader.js"></script> <script src="js/ncmb-2.0.0.min.js"></script> <script src="http://ajax.googleeapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script language="javascript">
$(function(){ //mBaaSの初期化 var application_key = ""; var client_key = ""; var ncmb = new NCMB(application_key, client_key); $(".btn>#btn1").on("click", function(){ //NCMB.Objectのサブクラスを生成 var Mail = ncmb.DataStore("Mail"); //クラスの新しいインスタンスを生成 var mail = new Mail(); mail.set("subject", subject) .set("content", content) .set("answer1", answer1) .set("answer2", answer2) .set("answer3", answer3) .save() .then(function(mail){ //保存に成功した場合はメッセージを表示 alert("データ保存に成功"); }) .catch(function(err){ //保存に失敗した場合はエラー表示 alert("error"); }); alert(subject); location.href = "./mail.html" }); }); </script>
</head> <body>
<form > <input type="text" id="subject" name="subject" placeholder="件名" /><br /> <TEXTAREA id="content" name="content" placeholder="内容" ></TEXTAREA><br /> <p>回答を入力してください</p> <input type="text" id="answer1" name="answer1" placeholder="回答" /><br /> <input type="text" id="answer2" name="answer2" placeholder="回答" /><br /> <input type="text" id="answer3" name="answer3" placeholder="回答" /><br /> </form> <div class="btn"> <input type="button" id="btn1" value="送信"/><br /> </div>
</body> </html>

###補足情報
ソースコードを直しました

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

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

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

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

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

guest

回答1

0

ベストアンサー

バージョン1.2.6にはNCMB.initializeが初期化メソッドとして存在するようですが、
JsDoc Reference - NCMB
バージョン2は、newでインスタンスを作成するようですね。
http://mb.cloud.nifty.com/assets/sdk_doc/javascript/jsdoc/classes/NCMB.html

最新のドキュメントを参照するようにした方がいいでしょう。
SDKガイド (JavaScript) : Version2に伴う変更点 | ニフティクラウドmobile backend

#####追記
NCMB.Objectもバージョン2には存在しません。
繰り返しになりますが、最新のドキュメントを読んでください。あの動画のコードはバージョン2では動作しないと思います。
SDKガイド (JavaScript) : オブジェクト操作 | ニフティクラウド mobile backend

投稿2015/10/28 09:42

編集2015/10/30 01:28
Lhankor_Mhy

総合スコア36115

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

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

退会済みユーザー

退会済みユーザー

2015/10/29 00:04

あ、これって初期化していたんですね! ってことは var ncmb = new NCMB(application_key, client_key); でいいってことですよね!
退会済みユーザー

退会済みユーザー

2015/10/30 08:40

最新のドキュメントを見ながらあれやこれややってみました! 結果、データを保存すること自体はできるようになったのですが、空のデータが保存されてしまいますorz
Lhankor_Mhy

2015/10/31 01:52

`subject`や`answer1`などの変数にフォームの値を代入していないのではないでしょうか。 jQueryだと、`$('#subject).val()`などで取得できると思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問