2016-08-30 9 views
3

私はフォームで作業しており、target属性を尋ねています。次の例では_blankとなります。入力が同じ名前のときにフォームプロパティを取得する方法

<form action="demo_form.asp" method="get" target="_blank"> 
    First name: <input type="text" name="target"><br> 
    Last name: <input type="text" name="lname"><br> 
    <input type="submit" value="Submit"> 
    <input type="hidden" name="accessKey" value="somwhere" class=""> 
</form> 

代わりform.target名前targetinputへの参照です。

これはクロムデバッガでは表示されますが、lnameなどの他の名前の項目は表示されません。form.lnamelnameの入力を示します。

form.targetプロパティを取得する方法はありますか?targetという名前のフォーム要素はありませんか?または、ソース値を取得するにはform.attributesに行く必要がありますか?

var target = form.getAttribute('target'); 

またはjQueryの等価物、attr()

var target = $(form).attr('target'); 

またはprop()(あるformを仮定

答えて

1

あなたがgetAttribute()方法を使用することができ、<form />要素への参照を保持する変数であります可能であれば好ましい):

var target = $(form).prop('target'); 
+0

jQueryに相当するものは '.prop()'ではなく '.attr()'です。 – zzzzBov

+0

真。できるだけprop()を使用してください。ノートに更新。 –

+0

'.prop(prop)'と '.attr(attr)'はそれぞれ 'form [prop]'と 'form.getAttribute(attr)'のアクセサー/ミューテータです。それらは異なるツールであるため、異なる目的を果たします。あなたが他のものよりも1つを好むべきであると言っているのは、ボールピーンハンマーよりも爪のハンマーを好まなければならないということです。 – zzzzBov

関連する問題