0

これは 3 回目であり、私の問題を明確にしたいと思います。したがって、最初のページでは、データベースに保存したレコード全体を表示します.2番目のページで選択した詳細を表示したい場合は、選択したデータをクリックして表示する必要がありますが、何も起こらず、リンクする方法がわかりませんVIEW から 2 ページ目にすべてのデータを表示できます。写真をキャプチャしたので、皆さんが私を助けてくれることを願っています。

これは最初のページです

これは最初のページです

これは、テキスト フィールドに詳細を表示する 2 番目のページです。 これは、テキスト フィールドに詳細を表示する 2 番目のページです。

コーディングはこのようなものです(最初のページ::レコード全体を表示し、2番目のページにリンクします)

    function showRecords(){
    results.innerHTML='';
    db.transaction(function(tx)
    {
        tx.executeSql(selectAll,[],function(tx,result)
        {
            dataset = result.rows;
            for(var i=0,item=null;i<dataset.length;i++)
            {
                item = dataset.item(i);
                results.innerHTML+=
                '<li>' + item['fname'] + ' <a href="#" onclick="loadRecord('+i+')">view</a>'+'<a href="#" onclick="deletetab('+item['id']+')">delete</a>'+'</li>';
            }
        });
    });
}

function loadRecord(i){
    var item=dataset.item(i);
    fname.value = item['fname'];
    id.value = item['id'];
    window.location.href="userup2.html?loadRecord("+i+")";
    return false;
}

いくつかのアイデアと例を教えてください.Web SQLを使用してデータを保存しています.私はすでにこの質問を数回行っています.htmlとjavascriptの初心者です.助けてください.これは重要です.

4

1 に答える 1

1

はい、クエリ文字列を使用して実現できます。web-sql はよくわからないので、最初のページで URL にクエリ文字列を追加する方法と、2 ページ目でそれを取得する方法を示します。

JS コード:

function loadRecord(i){ 
    var item=dataset.item(i); 
    fname.value = item['fname']; 
    id.value = item['id']; 
    window.location.href="userup2.html?id="+i; 
    return false; 
} 

i上記の関数では、 (1 つのレコードの id) をクエリ文字列として追加しています。

function getUrlVars()
{
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}

このコードは、URL からクエリ文字列を取得するのに役立ちます。

例:

var id = getUrlVars()["id"];

上記の行は、最初のページで渡した ID を取得するのに役立ち、それを使用してデータベースから詳細を取得できます。

これがお役に立てば幸いです:)

于 2012-07-09T03:44:51.783 に答える