Đã có giải pháp để viết tệp JSON trực tuyến nhưng tôi muốn lưu tệp json cục bộ. Tôi đã cố gắng sử dụng ví dụ này http://jsfiddle.net/RZBbY/10/ Nó tạo liên kết để tải xuống tệp, sử dụng cuộc gọi này a.attr('href', 'data:application/x-json;base64,' + btoa(t.val())).show();
Có cách nào để lưu tệp cục bộ thay vì cung cấp liên kết có thể tải xuống không? Có các loại chuyển đổi khác ngoài data:application/x-json;base64
?JavaScript có thể lưu vào tệp cục bộ bằng cách nào?
Dưới đây là mã của tôi:
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>jQuery UI Sortable - Default functionality</title>
<link rel="stylesheet" href="http://jqueryui.com/themes/base/jquery.ui.all.css">
<script src="http://jqueryui.com//jquery-1.7.2.js"></script>
<script src="http://jqueryui.com/ui/jquery.ui.core.js"></script>
<script src="http://jqueryui.com/ui/jquery.ui.widget.js"></script>
<script src="http://jqueryui.com/ui/jquery.ui.mouse.js"></script>
<script src="http://jqueryui.com/ui/jquery.ui.sortable.js"></script>
<script src="http://jqueryui.com/ui/jquery.ui.accordion.js"></script>
<link rel="stylesheet" href="http://jqueryui.com/demos/demos.css">
<meta charset="utf-8">
<style>a { font: 12px Arial; color: #ac9095; }</style>
<script type='text/javascript'>
$(document).ready(function() {
var f = $('form'), a = $('a'),
i = $('input'), t = $('textarea');
$('#salva').click(function() {
var o = {}, v = t.val();
a.hide();//nasconde il contenuto
i.each(function() {
o[this.name] = $(this).val(); });
if (v === '') {
t.val("[\n " + JSON.stringify(o) + " \n]")
}
else {
t.val(v.substr(0, v.length - 3));
t.val(t.val() + ",\n " + JSON.stringify(o) + " \n]")
}
});
});
$('#esporta').bind('click', function() {
a.attr('href', 'data:application/x-json;base64,' + btoa(t.val())).show();
});
</script>
</head>
<body>
<form>
<label>Nome</label> <input type="text" name="nome"><br />
<label>Cognome</label> <input type="text" name="cognome">
<button type="button" id="salva">Salva</button>
</form>
<textarea rows="10" cols="60"></textarea><br />
<button type="button" id="esporta">Esporta dati</button>
<a href="" style="display: none">Scarica Dati</a>
</body>
</html>
Cảm ơn, nó có thể cung cấp thông tin sai nhưng tôi không biết điều này trước đây và được sử dụng để nhận trợ giúp từ nó. Có thể xin vui lòng cho tôi biết những gì là sai trong liên kết cụ thể tôi đã đưa ra trong câu trả lời. – Adil
Thx !!! Hiện tại tôi đang nghiên cứu bộ nhớ trên web nhưng có các loại chuyển đổi khác ngoài dữ liệu: application/x-json; base64? –
Uao ROdneyrehm Tôi không biết trang này wfools.com –