我正在尝试存储以下数据,取自html
title:"Tempered Song",
artist:"Miaow",
mp3:"http://www.jplayer.org/audio/mp3/Miaow-01-Tempered-song.mp3",
oga:"http://www.jplayer.org/audio/ogg/Miaow-01-Tempered-song.ogg",
poster: "http://www.jplayer.org/audio/poster/Miaow_640x360.png"
我的HTML代码是:
<a class="add-music" data-title="Las Voces" data-artist="" href="audios/song-little.mp3">Add to List</a>
<a class="download-music" href="audios/song-little.mp3">Download</a>
<a class="add-music" data-title="Las Voces del Bosque" data-artist="" href="audios/song-little.mp3">Add to List</a>
<a class="download-music" href="audios/song-middle.mp3">Download</a>
<a class="add-music" data-title="Las Bosque" data-artist="" href="audios/song-little.mp3">Add to List</a>
<a class="download-music" href="audios/song-big.mp3">Download</a>
我的代码jquery是:
$( document ).ready(function() {
$('.add-music').click(function() {
$.ajax({
'type':'POST',
'data':fuction() {
var songNew = JSON.stringify({
title: $(this).attr('data-title'),
artist: $(this).attr('data-artist'),
mp3: $(this).attr('href'),
});
});
datatype: 'json',
url: 'session.php',
async: true,
cache:false
});
});
});
但它不起作用,有没有办法让这更好更清洁?
答案 0 :(得分:1)
您的数据构建方式存在问题。使用以下内容:
'data': JSON.stringify({
title: $(this).attr('data-title'),
artist: $(this).attr('data-artist'),
mp3: $(this).attr('href'),
}),
这会将json编码的字符串传递给post体中的服务器。如果您希望将变量视为标准的后变量,请跳过json编码步骤。
答案 1 :(得分:0)
修复多种语法错误:
$(document).ready(function () {
$('.add-music').click(function () {
$.ajax({
type: 'POST',
data: function () {
var songNew = JSON.stringify({
title: $(this).attr('data-title'),
artist: $(this).attr('data-artist'),
mp3: $(this).attr('href')
});
return songNew;
},
datatype: 'json',
url: 'session.php',
async: true,
cache: false
});
});
});
或许更好:
$(document).ready(function () {
$('.add-music').click(function () {
var songNew = JSON.stringify({
title: $(this).attr('data-title'),
artist: $(this).attr('data-artist'),
mp3: $(this).attr('href')
});
$.ajax({
type: 'POST',
data: songNew,
datatype: 'json',
url: 'session.php',
async: true,
cache: false
});
});
});
答案 2 :(得分:0)
最终效果很好
$(document).ready(function () {
$('.add-music').click(function () {
var songNew = JSON.stringify({
title: $(this).attr('data-title'),
artist: $(this).attr('data-artist'),
mp3: $(this).attr('href')
});
var songIE = {json:songNew};
$.ajax({
type: 'POST',
data: songIE,
datatype: 'json',
url: 'session.php',
async: true,
cache: false
});
});
});
thanks4all