0

最初のページ (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! ");
}
4

0 に答える 0