Mon modèle Jade -
input#main_search.span2(
style = 'height: 26px; width: 800px;' ,
type = 'text',
readonly='true',
name='searchBar',
value='test'
)
Fichier JS -
$('#searchBar').val('hi')
console.log('sup')
Sortie de la console -
sup
Mais searchBar
value stats at test. Qu'est-ce que je fais mal?
Vous vous connectez sup
directement qui est une chaîne
console.log('sup')
Aussi, vous utilisez le mauvais identifiant
Le modèle indique #main_search
mais vous utilisez #searchBar
Je suppose que vous essayez ceci
$(function() {
var sup = $('#main_search').val('hi')
console.log(sup); // sup is a variable here
});
Assurez-vous que vous avez le bon sélecteur, puis attendez que la page soit prête et que l'élément existe jusqu'à ce que vous exécutiez la fonction.
$(function(){
$('#searchBar').val('hi')
});
Comme Derek le fait remarquer, l’identité est également fausse.
Changer en $('#main_search')
1) vous l’appelez mal, essayez:
$(input[name="searchBar"]).val('hi')
2) si cela ne fonctionne pas, appelez votre fichier .js à la fin de la page ou déclenchez votre fonction sur l'événement document.ready
$(document).ready(function() {
$(input[name="searchBar"]).val('hi');
});
Vous ciblez le mauvais élément avec ce sélecteur jQuery. La name
de votre barre de recherche est searchBar
et non la id
. Ce que vous voulez utiliser est $('#main_search').val('hi')
.
$(document).ready(function() {
$('#main_search').val('hi');
});