私はVisual Studioを使用してCordovaでクロスプラットフォームアプリケーションを作成しています。 私はMSSQLサーバーへの処理を行う外部Webサーバーと通信する必要があります。クライアント側でJava(ajax)は外部PHPと通信します(Visual StudioのCordova)
私はIndex.htmlとファイルを持っており、それはindex.js外部のJavaScriptファイルを使用しています。
サーバー側には、いくつかのPHPページがあります。ひとつひとつが別の目的を持っています。
Index.htmlと:
<form id="sendmsg" method="POST" action="http://www.somesite.com/.../processingmsg.php" enctype="multipart/form-data">
<p class="darkbg">* verplichte velden</p>
<div class="form-group">
<label class="darkbg">Naam</label>
<input class="form-control" onkeyup="lengtecheck()" type="text" name="naam" id="naam" />
</div>
<div class="form-group">
<label class="darkbg">Leeftijd</label>
<input class="form-control" onkeyup="lengtecheck()" type="text" name="leeftijd" id="leeftijd" />
</div>
<div class="form-group">
<label class="darkbg">Telefoon</label>
<input class="form-control" onkeyup="lengtecheck()" type="text" name="telefoon" id="telefoon" />
</div>
<div class="form-group">
<label class="darkbg">Email</label>
<input class="form-control" onkeyup="lengtecheck()" type="email" name="email" id="email" />
</div>
<div class="form-group">
<label class="darkbg">*ES Code</label>
<input class="form-control" onkeyup="lengtecheck()" type="text" name="escode" id="escode" required />
</div>
<div class="form-group">
<label class="darkbg">*Bericht</label>
<p class="darkbg" id="tekens">0/100</p>
<textarea class="form-control" onkeyup="lengtecheck()" rows="7" id="msg" name="msg" cols="20" placeholder="Typ hier uw bericht..." maxlength="100" required></textarea>
</div>
<input class="btn btn-primary" type="submit" value="Send" id="Send">
<input action="action" class="btn btn-danger" type="button" onclick="window.history.back();" value="Back">
</form>
ユーザーがが送信ボタンをクリックしたときに、processingmsg.phpがすべてを処理し、成功になるように、私はそれを作ることができますどのように、上のJavaScript関数をトリガクライアント側?
その他の質問:これで結果(例:表、ドロップダウン値など)を返すことはできますか?
PHPはサーバサイドのコードなので、クライアント上では何も起動できません。あなたのフォームが提出されるとすぐに、それはHTML/CSS/Javascriptの現在のコンテキストを破壊します。意味するオブジェクトはもう存在しません。これにはAjaxを使うべきです。 Ajaxコールは、リフレッシュせずにPHPコードを呼び出し、現在のページを破棄し、PHPコードからの応答を取得した後にコールバックを実行できます。 – 11thdimension