2010-11-20 6 views

Répondre

104

Vous pouvez utiliser .indexOf() et .substr() comme ceci:

var val = $("input").val(); 
var myString = val.substr(val.indexOf("?") + 1) 

You can test it out here. Si vous êtes sûr du format et il n'y a qu'une seule marque de question, vous pouvez simplement faire ceci:

var myString = $("input").val().split("?").pop(); 
+0

+1, réponse plus complète :) –

+0

merci Nick .. la première méthode a bien fonctionné ... – Sullan

+6

En fait, lastIndexOf() est plus sûr si vous avez plus d'un des caractères spéciaux dans votre chaîne. Bonne réponse de toute façon. Merci. +1 – frostymarvelous

2

En supposant que vous avez votre entrée cachée dans un objet jQuery $myHidden, vous utilisez alors JavaScript (non jQuery) pour obtenir la partie après ?:

var myVal = $myHidden.val(); 
var tmp = myVal.substr (myVal.indexOf ('?') + 1); // tmp now contains whatever is after ? 
1

Voici une manière:

<html> 
    <head> 
     <script src="jquery-1.4.2.min.js" type="text/javascript"></script> 
     <script type="text/javascript"> 
      $(document).ready(function(){ 
       var value = $('input[type="hidden"]')[0].value; 
       alert(value.split(/\?/)[1]); 
      }); 
     </script> 
    </head> 
    <body> 
     <input type="hidden" value="/TEST/Name?3" /> 
    </body> 
</html> 
Questions connexes