2016-11-30 13 views
0

JSを使用して動的に生成される入力タグがページにあります。 $("#input1").val(value)を使用して初期化されます。どのように特定の入力要素をテキストに基づいて見つけることができますか?次のようにテキストで要素を検索する

値が初期化されます:

$("input[name='DeviceIP']").each(function(index,elem){$(elem).val(value)}); 

私が今使っているソリューションは、私が検索を使用して、その後検査したいすべての入力を選択することです。

$("[name='DeviceIP']").filter(function(index, elem) { 
    var res = false; 
    var _this = this; 
    $("[name='DeviceIP']").each(function(index2, elem2) { 
     if(elem2 !== _this) { 
      if(_this.value === elem2.value) { 
       errMessage = "error text"; 
       res = true; 
      } 
     } 
    }); 
    return res; 
} 

私は質問hereに見えたが、 ":含まれている"(?何のvalue属性が存在しないかもしれないので)何らかの理由のためにそれらを見つけることができませんでした

+2

は、あなたが方法でこれを行うことができ8.soあなたの検索値は、たとえば言います。現在のアプローチに何か問題はありますか? –

+2

'input1'の前に' .'または '#'がありません。私は追加しませんValに値を()初期化しています私の質問にも言ったように –

+0

@MihaiVilcuそれだけでhttp://jsbin.com/ketejax/edit?html,js,console,output –

答えて

1

"$("input[name='DeviceIP'][value='your_value_here']")

element.valueです)あなたは多くの要素を持っている場合

それでも、あなたは非常に多くの場合、このようなクエリを実行すべきではありません。また、属性は、つまり、あなたのクエリでそれを定義することができます。

私も値としてキー、およびノー​​ドなどの値で、あなたがマップを作成することをお勧め。

+0

動作しません。属性をDOMに追加します。私はこのアプローチを使用することはできません。私はそれをより明確にするために、より詳細な例を追加しました。ここで更新フィドルは次のとおりです。https://jsfiddle.net/kef3073a/2/ –

+0

@RandallFlaggはいすることができます;) 点は、HTMLで定義されている属性は、この場合の初期値()です。 JSでそのプロパティを変更すると、HTMLで定義されているものは変更されませんが、実際には '可視値'(目で見えるもの)が変更されます。 だから、基本的には: VAR入力= document.querySelector( '[名= "DeviceIP"]') するvar $入力= $(入力) input.value = 'QWE' $ input.val()// - > qwe – grzesiekgs

+0

$ input.attr( 'value'、 'new value') のようにjqueryで値属性を変更しようとすると、機能しません。アトリビュートはHTMLでは変更されますが、入力値に変更はありません。 – grzesiekgs

0

はあなたが特定の値を持つ要素をしたい

<input type="text" value="5" name="DeviceIP"> 
<input type="text" value="8" name="DeviceIP"> 

などの入力フィールドがあるとします。あなたはこれを行うことができます

alert($("input[name='DeviceIP'][value='5']").val()); 

ここではfiddleです。ない値プロパティの要素内のテキストでルックスが含まれています:あなたの値が動的である場合
は、

var val = 8; 
alert($("input[name='DeviceIP'][value='"+val+"']").val()); 
+0

これはgrzesiekgsと同じ答えです – synthet1c

+0

いいえ、私の最後の部分で私はまた、動的価値のためにそれを与える。また、私はライブの例を見るためにフィドルを与えました。 –

+0

@AtaurRahmanMunna私は私の質問では、DOMに属性を追加しないval()で値を初期化していると言ったように。私はこのアプローチを使用することはできません。私はそれをより明確にするために、より詳細な例を追加しました。ここに更新された詐欺です:https://jsfiddle.net/kef3073a/2/ –

関連する問題