2010-03-13 12 views
1

Je ne comprends pas quel serait le problème avec le code suivant. Il doit copier la valeur d'id de l'image dans une autre zone de texte, mais à la place, j'obtiens une erreur.Fin inattendue du fichier lors de la recherche du sélecteur d'attribut ']' à fin

Fin de fichier inattendue lors de la recherche de ']' à fin de sélection d'attribut.

<script> 
$(function() { 
    $(".floatLeft").click(function() { 
     var id = $(this).attr("id").replace(/\D/g, ""); 
     $("input[name='photo[" + id + "]'").val(Math.abs($("input[name='photo[" + id + "]'").val() - 1)); 
    }); 
}); 
</script> 

     <ul class="thumbs"> 

     <li> 
       <img src="/FLPM/media/news/images/2M9Y1I2K_sm.jpg" alt="Garden" id="28" class="floatLeft" /> 
       <input type="text" name="photo28" value="0" /> 

      <br /> 
      <a href="?Process=&IMAGEID=28" class="thumb"><span class="floatLeft">DELETE</span></a> 
     </li> 

     <li> 
       <img src="/FLPM/media/news/images/2A9L1V2X_sm.jpg" alt="Frangipani Flowers" id="27" class="floatLeft" /> 
       <input type="text" name="photo27" value="0" /> 
      <br /> 
      <a href="?Process=&IMAGEID=27" class="thumb"><span class="floatLeft">DELETE</span></a> 

     </li> 
    </ul> 

Répondre

3

Votre code doit être:

$(".floatLeft").click(function() { 
    var id = $(this).attr("id").replace(/\D/g, ""); 
    $("input[name='photo\\[" + id + "\\]']").val(Math.abs($("input[name='photo\\[" + id + "\\]']").val() - 1)); 
}); 

Tout ce que je n'ai lu le message d'erreur

+0

Je reçois toujours la même erreur. – zurna

+0

C'est parce que vous avez la même erreur dans le premier sélecteur. –

0
$("input[name='photo[" + id + "]'") 

un ] manque

Je ne suis pas sûr mais vous ne devez pas renvoyer la valeur de l'attribut entre guillemets simples. Et également des doubles parenthèses d'échappement dans la valeur d'attribut

$("input[name=photo\\[" + id + "\\]]") 
Questions connexes