最初のページ (index.html) には 2 つのラジオ ボタンがあり、値を javascript でデータベースに保存する必要があります (word の添付データベースを参照)。また、設定ページには 2 つのラジオ ボタンもあります。ユーザーがオプションを変更した場合 (この場合は英語またはオランダ語)、index.html ページで行った選択を settings.html ページに入力し、選択した選択肢を読み上げる必要があります。 ) この値をデータベースに再度保存する必要があります。これは settings.html ページでのみ可能です (ユーザーは index.html ページに戻ることができます。これは 1 回限りのセットアップ ページです)。
これは、index.html と settings.html の両方にある 2 つのラジオ ボタンのスクリプトです。
<input type="radio" name="set-language" id="dutch" checked />
<label for="dutch" class="flag-nl">Dutch<span></span></label>
<input type="radio" name="set-language" id="english" />
<label for="english" class="flag-uk">English<span></span></label>
チェックボックスの値を取得するという同じ質問があります。設定ページにあるコードは次のとおりです。データベース内に値を追加する必要があるチェックボックスについても、ユーザーが設定ページに戻ります(以前に行った選択を確認できます)。このコードは、settings.html ページでのみ使用できます。
<input type="checkbox" name="cards-nsyearcard" id="cards-nsyearcard" />
<label for="cards-nsyearcard">NS jaar/trajectkaart</label>
<input type="checkbox" name="cards-thepassbusiness" id="cards-thepassbusiness" />
<label for="cards-thepassbusiness">ThePass Business</label>
<input type="checkbox" name="cards-thepassweekend" id="cards-thepassweekend" />
<label for="cards-thepassweekend">ThePass Weekend</label>
<input type="checkbox" name="cards-thalys" id="cards-thalys" />
<label for="cards-thalys">Thalys TheCard</label>
現在、この部分で少し行き詰まっているので、助けていただければ幸いです。:-)
使用しているデータベースは次のとおりです。
//database storge
function dbBtn(){
db.transaction(populateDB,errorCB, successCB);
$.mobile.changePage("settings_succesfull.html" );
}
function loadSettings(){
db.transaction(queryDB, errorCB);
}
function bdClick(){
$.mobile.changePage("settings.html");
db.transaction(queryDB, errorCB);
}
function queryDB(tx) {
tx.executeSql('SELECT * FROM user', [], querySuccess, errorCB);
}
function querySuccess(tx, results) {
len = results.rows.length;
if (len > 0) {
for (var i=0;i<len;i++) {
$("#user- name").val(results.rows.item(i).userName);
$("#user-insertion").val(results.rows.item(i).userInsertion);
$("#user-lastname").val(results.rows.item(i).userLastname);
$("#user-email").val(results.rows.item(i).userEmail);
}
}
}
function transaction_error(tx, error) {
alert("Database Error: " + error);
}
function tableDB(tx) {
// tx.executeSql('DROP TABLE IF EXISTS user');
var sql = "CREATE TABLE IF NOT EXISTS user ( "+
"id INTEGER PRIMARY KEY AUTOINCREMENT, " +
"userName VARCHAR(50), " +
"userInsertion VARCHAR(50), " +
"userLastname VARCHAR(50), " +
"userEmail VARCHAR(50), " +
"age VARCHAR(20))";
tx.executeSql(sql);
}
function populateDB(tx) {
var setName = $("#user-name");
var setInsertion = $("#user-insertion");
var setLastName = $("#user-lastname");
var setEmail = $("#user-email");
var setGender = $("input:checked");
tx.executeSql('INSERT INTO USER (userName, userInsertion, userLastname, userEmail,age) VALUES ("' + setName.val() + '", "' + setInsertion.val() + '", "' + setLastName.val() + '", "' + setEmail.val() + '","' + setGender.val() + '")');
}
function errorCB(tx, err) {
alert("Error processing SQL: "+err);
}
function successCB() {
// alert("success! ");
}