我有这段代码,它的作用是使用jstorage保存一个值。
我想点击保存的价值 - 我打算在那里存储链接(有点像喜欢的书签)。
所以我会有2个字段,Key和value,key是一个描述性名称,值将存储整个url(http:// ...)。只有Key可见,值被隐藏。点击Key后,想要重定向到页面。
我有什么想法可以做到吗?
<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>
答案 0 :(得分:1)
首先,你的代码确实令人困惑......
尽管如此,关于您的问题,您必须输出键列作为链接,将值作为href attrubute。
因此,在您的代码中,您可以使用类似这样的内容作为第一列:
//...
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);
//...