2013-06-05 15 views
17

Su clic di una delle opzioni che sto cercando di ottenere il valore dei dati dal 'ul li a' e posizionarlo nel bottone qui sotto, ho creato un esempio di violino qui: http://jsfiddle.net/q5j8z/4/jQuery dei dati Accesso HTML5

Ma cant sembrano farlo funzionare

$('ul li a').click(function(e) { 
    e.preventDefault(); 

    var value = $(this).data(); 

    $('.button').data('value'); 
}); 

qualcuno ha qualche idea per favore?

+0

vedono questo violino http modificata://jsfiddle.net/q5j8z/16/ – Rinku

risposta

15

Si può fare questo:

$('ul li a').click(function (e) { 
    e.preventDefault(); 
    var value = $(this).data('value'); 
    $('.button').data('value', value); 
    console.log($('.button').data('value')); 
}); 

Qui, $(this).data('value') viene utilizzato per ottenere il valore di attributo data del collegamento.

e $('.button').data('value', value) viene utilizzato per impostare il valore dell'attributo data del pulsante.

Utilizzando, console.log($('.button').data('value')); è possibile controllare la console il valore data impostato.

FIDDLE DEMO

Per maggiori informazioni: - .data() API Documentation

+1

Eccellente grazie mille – Adam

+0

@adam Sono contento che ci abbia aiutato! Puoi sempre visitare http://api.jquery.com/ se hai qualche dubbio su qualsiasi metodo jQuery :) –

1

Prova questo:

$('ul li a').click(function(e) { 
     e.preventDefault(); 

     var value = $(this).data('value'); 

     $('.button').data('value', value); 
    }); 

È possibile visualizzare il valore del pulsante con console.log nella vostra console con:

console.log('data: '+$(".button").data("value")); 
2

Utilizzare in questo modo:

var value = $(this).data('value'); 

E poi:

$('.button').data('value', value); 
1

Lei non è assegnando i dati di valore per il pulsante in realtà. Prova questo:

$('ul li a').click(function(e) { 
    e.preventDefault(); 

    var value = $(this).data(); 

    // assign the value form the clicked anchor to button value data 
    $('.button').data('value', value); 

    console.log($('.button').data('value')); 
}); 
0

Prima di tutto si sta stai cercando di inserire il valore di value o 'valore' variabile letterale?

data() è destinato a essere utilizzato in modo simile a attr('attr-name', attr_value) come di seguito:

$('ul li a').click(function(e) { 
    e.preventDefault(); 
    var value = $(this).data('value'); 
    $('.button').data('value', value); 
}); 

Le opere di cui sopra nel vostro violino.

0

prega di notare che non è necessario specificare Data- prefisso perché Jquery lo fa automaticamente

Quindi assicurarsi che si sta utilizzando l'attributo giusto per valore inferiore a

$('ul li a').click(function(e) { 
    e.preventDefault(); 
    var value = $(this).data('value'); 
    $('.button').data('value', value); 
});