私は jQuery のスターターです。jQueryを使用してフォーム内のすべてのコントロールを見つける方法は?
私はコードがこのようなものであることを知っています
function submitValidator(){
$("form :input").each(function(){ });
ID にアクセスしたいので、正規表現を適用する必要があります
一部のテキスト ボックスは数字で、残りは英数字です。それらを並べ替えて正規表現を適用する方法はありますか?
私は jQuery のスターターです。jQueryを使用してフォーム内のすべてのコントロールを見つける方法は?
私はコードがこのようなものであることを知っています
function submitValidator(){
$("form :input").each(function(){ });
ID にアクセスしたいので、正規表現を適用する必要があります
一部のテキスト ボックスは数字で、残りは英数字です。それらを並べ替えて正規表現を適用する方法はありますか?
HTML に新しいプロパティ data-charSet を追加できます
<input type="text" id='amt' data-charSet='numeric'>
「form :」の後に追加するすべてのコントロールを追加します。
function submitValidator(){
$("form :text, textarea").each(function(){
var NumericOnly = "^[0-9]*$";
var svId = $(this).attr('id');
if($(this).attr('data-charSet') == 'numericonly')
{
if(!$(this).val().match(NumericOnly)) {
alert("numeric");
eval("$('#" + svId +"').focus();")
return false;
}
}
});
}
使用する
function submitValidator() {
$("form :input").each(function(){
var id = $(this).attr('id'); // here you got id
});
} // here missed brace
オブジェクトを取得できる場合は、ID を取得する必要はありません
function submitValidator() {
$("form :input ,form textarea").each(function(){
$(this).yourfunction();
});
}
:input は入力付きのタグのみを提供します。テキストエリアは見逃されるため、それも追加する必要があります
私はあなたがこのようなことをしたいと思います:
$("form").find("input").each(function(){
var currentElementsId = $(this).attr("id");
if(currentElementsId.match(/^regex/)){
//do something
}
});
フォームタグ内の入力要素以上のものを取得したい場合は、次のfind()
ように関数に複数のセレクターを配置できます。find("input,select,textarea,.className,[type='valueOfAttributeType']")
そして明らかに他のセレクター