Concaténate dans le sélecteur jQuery
problème Simple. J'ai une variable js que je veux concaténer aussi dans un sélecteur jQuery. Cependant, il n'est pas de travail. Pas d'erreurs sont popping up. Quel est le problème? Comment puis-je concaténer correctement une variable à un texte dans un sélecteur jQuery.
<div id="part2"></div>
<script type="text/javascript" >
$('#button').click(function ()
{
var text = $('#text').val();
var number = 2;
$.post('ajaxskeleton.php', {
red: text
},
function(){
$('#part' + number).html(text);
});
});
</script>
2 réponses
Il n'y a rien de mal avec la syntaxe
$('#part' + number).html(text);
jQuery accepte une chaîne ( habituellement un sélecteur CSS) ou Dom Node comme paramètre pour créer un Objet jQuery.
dans votre cas, vous devez passer une chaîne à $()
$(<a string>)
assurez-vous d'avoir accès aux variables number
et text
.
À tester faire:
function(){
alert(number + ":" + text);//or use console.log(number + ":" + text)
$('#part' + number).html(text);
});
si vous voyez que vous n'avez pas accès, passer en paramètres à la fonction, vous devez inclure le uual paramètres de $.obtenez et passez les paramètres personnalisés après eux.
votre syntaxe de concaténation est correcte.
il est fort probable que la fonction de rappel ne soit même pas appelée. Vous pouvez tester cela en mettant un alert()
,console.log()
ou debugger
ligne dans cette fonction.
si elle n'est pas appelée, il y a très probablement une erreur AJAX. Regardez enchaînant un .fail()
gestionnaire après $.post()
pour savoir quelle est l'erreur, par exemple:
$.post('ajaxskeleton.php', {
red: text
}, function(){
$('#part' + number).html(text);
}).fail(function(jqXHR, textStatus, errorThrown) {
console.log(arguments);
});