编写一个javascript var="一些文本“;转换为预加载但为空的txt文档
write a javascript var="some text" into a pre loaded but empty txt document
我正在为我组装的音乐播放器创建一个动态播放列表。播放列表将位于一个外部.txt文档中。我将举一个例子。我有一个变量:
playlist="track_1"
页面上有一个按钮
<button onclick="add_track()">
在头中的脚本中
function add_track()
{
playlist=playlist+" track_2"
...What I need here is some way to put the playlist variable into a txt doc
}
按钮将由php生成,以包括要添加到播放列表变量字符串中的曲目的名称。Document.write非常适合这个函数,因为它用变量的内容替换了所有内容;不幸的是,它替换了按钮所在的文档,而不是指定的外部文件。
您可以在文件中创建一个JSON对象并将其保存为file1.JSON
{ "playlist" : "track1" }
以及使用
$.getJSON("file1.json", function(data){
var playlist=data.playlist+" track_2"
});
当然,只有当您阅读它时,这才有效,要写入.json文件,您应该使用PHP或任何您使用服务器端的东西
您不能用javascript在文件上写任何东西。您需要一个服务器端解决方案。
例如:您可以对php脚本进行ajax调用,该脚本在txt文件
您需要使用PHP来写入/追加到文件中。您可以使用jQuery.ajax()
函数来调用PHP脚本来写入/附加到文件:
jQuery('#buttonId').live('click',function(event) {
$.ajax({
url: 'write-file.php',
type: 'POST',
dataType: 'json',
data: {
playlist: "track_1"
},
success: function( data ) {
for(var id in data) {
alert( data[id] );
}
}
});
return false;
});
写入文件.php(类似于此)
$myFile = "testFile.txt";
$fh = fopen($myFile, 'a');
fwrite($fh, $_POST['playlist']);
fclose($fh);
// echo status here in json format
如果您想在客户端编写播放列表,可以使用html5文件系统api。http://www.html5rocks.com/en/tutorials/file/filesystem/
根据您实际想要做的事情,您可以打开一个带有data
URI的新浏览器窗口,其中包含您的文本:
window.open('data:,' + encodeURIComponent(playlist));
用户只需保存文档即可。播放列表的大小受到允许的URI长度的限制。
以下是一个示例:http://jsfiddle.net/UjzsG/
感谢您的帮助,这是我第一次问一个愚蠢的问题,得到了一个非常好的答案。事实证明我有点胖,现在不需要PHP,但我稍后会保存播放列表。实现了制作动态播放列表,我可以将它所在的数组作为变量中的字符串,向字符串中添加曲目,然后在读取列表的每个函数中调用eval(播放列表)。
var playlist = 'var tracks = new Array("track_00","track_01"';
var end_bit = ');';
var playlist_full = playlist+end_bit;
然后添加
function AddTrack()
{
playlist=playlist+'"track_02"';
}
阅读
function ReadTrack()
{
playlist_full = playlist+end_bit;
eval(playlist_full)
document.getElementById("current_track").innerHTML=tracks[2];
}
再次为所有的建议欢呼。
- d3转换从页面加载开始,而不是从模式弹出加载开始
- 加载图像后启动转换事件
- 将从文本文件加载的字符串转换为JavaScript中的数组对象
- 无法将动态加载的 teaxtarea 转换为 ckeditor
- 如何在 Streoids.js 中转换后重新加载页面
- 有没有办法在 HtmlUnit 开始执行 javascript 之前转换它加载的页面
- 正则表达式将 html-image 转换为 XML 以避免预加载
- 是否可以使用 jQuery .load() 加载 GA 转换脚本?
- 页面加载时的语义 UI 转换
- 将点击事件转换为页面加载事件
- 编写一个javascript var="一些文本“;转换为预加载但为空的txt文档
- 将图像转换为已加载的画布
- 转换到路线后重新加载模型
- 淘汰赛3.2-'如果'基于AMD加载组件之间的转换
- Angularjs延迟加载时请求转换的多个指令
- 加载<选项>转换为<选择>当<选择>单击
- 在通过函数将数字转换为日期并加载刷新更多数据中
- 当JQuery事件发生时,通过加载跟踪URL将跟踪脚本转换为使用JQuery
- 将HTML转换为Joomla模板,JS文件无法加载
- 仅在页面加载的特定百分比上进行转换/事件像素加载