2011-07-31 8 views

答えて

40
$(input).val(
    function(index, value){ 
     return value.substr(0, value.length - 1); 
}) 
+0

お返事ありがとうございます。それは尋ねられたことに答えるためのすばらしく簡単です – BNN

5

以下の作品、それはおそらく、少し不格好だとはいえ:

$('#idOfButtonToClick').click(
    function(){ 
     var inputString = $('#idOfInput').val(); 
     var shortenedString = inputString.substr(0,(inputString.length -1)); 
     $('#idOfInput').val(shortenedString); 
    }); 

JS Fiddle demo。文字列を切り捨てる前に,文字である最後の文字をチェックし

改訂デモ、:

$('#idOfButtonToClick').click(
    function(){ 
     var inputString = $('#idOfInput').val(); 
     if (inputString.charAt(inputString.length - 1) == ',') { 
      var shortenedString = inputString.substr(0,(inputString.length -1)); 
     $('#idOfInput').val(shortenedString); 
     } 
     return false; 
    }); 

JS Fiddle demo

+0

+1 '$("#idOfInput ")'を使用して簡単に最適化でき、 'val () 'を返します。フォークされた:http://jsfiddle.net/gWMDT/1/ – Yahel

4

これらの2行は、特定の入力から末尾のカンマを削除します。いつ実行する必要があるかを決めるためにあなたに任せておきます(変更/ボタンクリック時など)。

var $theInput = $('#myInput'); 
$theInput.val($theInput.val().replace(/,$/, '')); 

あなたもこれに正規表現を変更し、最後にすべての可能な空白を取り除きたい場合は、次の

/\s*,\s*$/ 
+0

この答えのためのトンをありがとう。 –

7

あなたが任意の最後の文字(だけではなく、カンマ、スペースをチョップしたい場合)、あなたはsliceを使用することができます。

var $myInput = $('#myInput'); 
$myInput.val($myInput.val().slice(0, -1)); 

あなたは余分なスペース削除する$.trim()とそれを組み合わせることができます。

$myInput.val($.trim($myInput.val()).slice(0, -1)); 
関連する問題