Javascript Splice数组值

时间:2015-03-19 07:36:11

标签: javascript

几天前我问了一个问题,我会把它链接到这里,因为它对我想要的东西有一些解释,所以你可以知道我想做什么, JavaScript array splice 现在解决了,代码工作正常, 但现在我想得到拼接卡的价值(当我们将它们拖入框并点击它时我们得到的卡片)

我认为这很简单,但我想我错了,

具体:我希望用户拿起3张卡,这将邮寄给网站的所有者,此刻我可以拿起3张卡,通过使用拼接,用户无法选择多张同一张卡,但是现在我想要它拿起的卡片,变成一个变量或者我可以在以后邮寄它们的东西。

$(function () {
var cars = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"];
 var rand = cars[Math.floor(Math.random() * cars.length)];
$(".cards img").each(function (index) {
var src = cars.splice(Math.floor(Math.random() * cars.length), 1);
console.log(src, cars.join())
 $(this).wrap('<div class="front"></div>')
.parent().wrap('<div class="flipper"></div>')
.parent().wrap('<div class="flip-container"></div>')
.append('<div class="back"><img src="kaart/'+ src[0] + '.png"</img> </div>');
    });

在html&gt;中

<script> 
 document.write ("Those will be mailed" + src[0] + "You get it ? "; ) 
</script>

JSFiddle: http://jsfiddle.net/arunpjohny/dkk2nqyg/9/

很难解释,希望你能得到这个想法。

1 个答案:

答案 0 :(得分:0)

您可以在创建元素时使用数据api设置src值

$(".cards img").each(function (index) {
    var src = cars.splice(Math.floor(Math.random() * cars.length), 1);
    $(this).wrap('<div class="front"></div>')
    .parent().wrap('<div class="flipper"></div>')
    .parent().wrap('<div class="flip-container"></div>')
    .data('src', src[0])
    .append('<div class="back"><img src="' + src[0] + '.png"</img> </div>');
});

然后你可以使用

获得一系列选定的项目
    var selected = $('#dvDest .flipper').map(function(){
        return $(this).data('src')
    }).get();
    //can use ajax to sent this data to server and then mail it

演示:Fiddle