0

私はこのコードを持っています、それがすることはjstorageを使用して値を保存することです。

保存した値をクリック可能にしたい-そこにリンクを保存するつもりです(お気に入りのブックマークのようなものです)。

したがって、キーと値の2つのフィールドがあり、キーはわかりやすい名前になり、値はURL全体(http:// ...)を格納します。キーのみが表示され、値は非表示になります。キーをクリックした後、ページにリダイレクトされます。

どのように私がそれを行うことができるかについてのアイデアはありますか?

    <script>



        function insert_value(){
            var row = document.createElement("tr"),
                key = document.getElementById('key').value,
                val = document.getElementById('val').value;

            if(!key){
                alert("KEY NEEDS TO BE SET!");
                document.getElementById('key').focus();
                return;
            }
            $.jStorage.set(key, val);
            document.getElementById('key').value = "";
            document.getElementById('val').value = "";
            reDraw();
        }



        function reDraw(){
            var row, del, index;
            var rows = document.getElementsByTagName("tr");
            for(var i=rows.length-1; i>=0; i--){
                if(rows[i].className == "rida"){
                    rows[i].parentNode.removeChild(rows[i]);
                }
            }

            index = $.jStorage.index();
            for(var i=0; i<index.length;i++){
                row = document.createElement("tr");
                row.className = "rida";
                var t = document.createElement("td");
                t.innerHTML = index[i];
                t.colSpan = 2;
                row.appendChild(t);
                t = document.createElement("td");
                t.className = "urls";
                t.innerHTML  = $.jStorage.get(index[i]);
                row.appendChild(t);
                del = document.createElement("a");
                del.href = "javascript:void(0)";
                del.innerHTML = "<div class='delimg'></div>";
                (function(i){
                    del.onclick = function(){
                        $.jStorage.deleteKey(i);
                        reDraw();
                    };
                })(index[i])
                t = document.createElement("td");
                t.appendChild(del)
                row.appendChild(t);
                document.getElementById("tulemused").appendChild(row);

            }
        }

    </script>
4

1 に答える 1

1

まず、あなたのコードは本当に混乱しています...。

それにもかかわらず、あなたの質問に関しては、hrefattrubuteとしての値を含むリンクとしてキー列を出力する必要があります。

したがって、コード内では、最初の列として次のようなものを使用できます。

//...
var t = document.createElement("td");
var link = document.createElement("a");
link.href = $.jStorage.get(index[i]);
link.innerHTML = index[i];
t.appendChild(link);
row.appendChild(t);
//...
于 2012-04-24T12:43:20.267 に答える