0

の値にtousersは、ユーザーがセミコロンで区切られています。

<input type='text' class='tousers' value='admin;user1;user2;user3;useradmin;' />

adminセミコロンの間に既に存在するかどうかを検索するにはどうすればよいですか? したがって、以下のコードは既に存在するため、追加adminされません。tousers

var content = 'admin';

var to = input.find('.tousers').val();

if(to == "") {
    input.find('.tousers').val(content);
} else {
    input.find('.tousers').val(to + ';' + content);
}
4

5 に答える 5

1
var content = 'admin';

var text = jQuery('.rousers').val();

var values = text.split(';')

var contentExists = jQuery.inArray(content, values)
于 2012-04-23T02:55:58.790 に答える
1

これにより、新しい項目がまだ利用できない場合は入力要素に追加されtousers、そうでない場合は「既に存在します」というアラートが表示されます

   $(function(){
      var newContent = 'user1';  
      var existingContent=$(".tousers").val()
      var existingArr=existingContent.split(";")
      var isPresent=$.inArray(newContent ,existingArr)       
      if(isPresent<0)
      {       
          $(".tousers").val(existingContent+newContent+";" );
      }
      else      
      {
         alert("Already present");
      }    
    });

作業サンプル: http://jsfiddle.net/WsELx/11/

于 2012-04-23T03:01:43.620 に答える
1

正規表現を使用して、文字列が既に値に含まれているかどうかをテストできます。

new RegExp("(^|;)" + content + "(;|$)").test(to)

(indexOf の使用では不十分)

于 2012-04-23T02:58:44.847 に答える
0
if(/\badmin\b/.test('admin;user1;user2;user3;useradmin;')) // has admin inside your string

またはあなたの場合

if(/\badmin\b/.test(to))

正規表現\badmin\bは、文字列で検索します-2つの単語境界で囲まれた管理者を探します

于 2012-04-23T02:55:07.800 に答える
0

あなたが使用することができます$.inArray(value, array)

var content = 'admin';
var to = $('.tousers').val();
var array = to.split(';');

if ($.inArray(content, array) == -1){
   $('.tousers').val(to + ';' + content); 
}
于 2012-04-23T03:03:34.717 に答える