Girdi metin kutusundaki değeri alın


1004

JQuery kullanarak giriş değeri almanın ve oluşturmanın yolları nelerdir?

İşte burada:

$(document).ready(function() {
  $("#txt_name").keyup(function() {
    alert($(this).val());
  });
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
<input type="text" id="txt_name" />


1
bu kodu kullanın: var value = $ ('# txt_Name'). val (); Değeri jquery kullanarak da ayarlayabilirsiniz. lütfen şu yayına
Ranadheer Reddy

Yanıtlar:


1654
//Get
var bla = $('#txt_name').val();

//Set
$('#txt_name').val(bla);

35
@Prabs, soru şuydu: "jQuery kullanarak bir girdi değeri almanın ve oluşturmanın yolları nelerdir?", Etiket bir girdi değildir.
Barry Michael Doyle

3
tırnak işaretlerini 'bla' dan çıkarın. $ ('# Txt_name') olmalıdır. Val (bla);
Charles Xavier

9
@ParbhuBissessar Mutlaka değil. Eğer kelimenin tam metni 'bla' istiyorsa, doğru anladı. O isterse valbir var blao tırnak kaldırması gerekmektedir.
double_j


bunu yaptım ama sorunları var.
Wasey Raza

591

Yalnızca aşağıdaki iki yolla bir değer seçebilirsiniz:

// First way to get a value
value = $("#txt_name").val(); 

// Second way to get a value
value = $("#txt_name").attr('value');

Değeri elde etmek için düz JavaScript kullanmak istiyorsanız, nasıl yapacağınız aşağıda açıklanmıştır:

document.getElementById('txt_name').value 

6
Bunun daha eski bir soru olduğunu biliyorum, ama attrbunun da değiştirilebileceğini unutmayın prop. Bu anlamsal olarak daha iyidir.
Sablefoste

$("#txt_name").val(str);Değeri ayarlamak için yalnızca Chrome'da benim için çalıştı. Bu yayını deneyin .
gkiko

JQuery append işlevinin, form değerlerini korurken HTML'ye ekleme konusunda herhangi bir sorunu olmadığı görülmektedir.
Adam F

1
$ ( "# txt_name") özn ( 'değer').; varsayılan değeri döndür / cevap yanlış!
zloctb

1
$("#txt_name").attr('value')"değer" özelliğinin içeriğini her zaman döndüreceğini unutmayın , bu nedenle giriş alanını değiştirirseniz değer değişmez. .val()her zaman alanın içeriğini döndürecek ..
honk31

84

Belirtilmesi gereken önemli bir şey var:

$("#txt_name").val();

örneğin, kullanıcı bir sayfa yüklendikten sonra oraya bir şey yazmışsa, metin alanının geçerli gerçek değerini döndürür.

Fakat:

$("#txt_name").attr('value')

DOM / HTML'den değer döndürür.


40

valueBir <input>öğe olduğunu bildiğiniz için özelliği doğrudan alabilirsiniz , ancak şu anki kullanımınız .val()zaten geçerli olanıdır.

Yukarıdakiler için sadece .valueDOM öğesinde doğrudan şu şekilde kullanın :

$(document).ready(function(){
  $("#txt_name").keyup(function(){
    alert(this.value);
  });
});

@Bharan Neden bir alternatife ihtiyacınız var?
Doug Molineux

3
bir yerde, alternatif kullanmak istiyorum,
Bharanikumar

16

Bir giriş öğesinin geçerli değerini elde etmek için çeşitli yollar kullanmanız gerekir.

YÖNTEM 1

Bir basit kullanmak istiyorsanız şunu .val()deneyin:

<input type="text" id="txt_name" />

Girdi'den değer alma

// use to select with DOM element.
$("input").val();

// use the id to select the element.
$("#txt_name").val();

// use type="text" with input to select the element
$("input:text").val();

Değeri Giriş olarak ayarla

// use to add "text content" to the DOM element.
$("input").val("text content");

// use the id to add "text content" to the element.
$("#txt_name").val("text content");

// use type="text" with input to add "text content" to the element
$("input:text").val("text content");

YÖNTEM - 2

.attr()İçeriği almak için kullanın .

<input type="text" id="txt_name" value="" />

Giriş alanına yalnızca bir özellik ekliyorum. value=""özelliği, girdi alanına girdiğimiz metin içeriğini taşıyan kişidir.

$("input").attr("value");

YÖNTEM - 3

bunu doğrudan inputöğenizde kullanabilirsiniz.

$("input").keyup(function(){
    alert(this.value);
});

15

Aşağıdaki gibi bir değer elde edebilirsiniz:

this['inputname'].value

Burada thisgirişi içeren formu ifade eder.


8
Bu yanıt this, girdiyi içeren forma atıfta bulunduğunu varsayar .
nandan

15

Bence bu fonksiyon burada önceki cevaplarda kaçırılmış:

.val( function(index, value) ) 

6

Metin kutusu değerini almak için jQuery val()işlevini kullanabilirsiniz .

Örneğin,

$('input:textbox').val() - Metin kutusu değerini alın.

$('input:textbox').val("new text message") - Metin kutusu değerini ayarlayın.


3

Benim gibi JS'de yeni başlayanlar ve undefinedmetin değeri yerine almak için idgeçersiz karakterler içermediğinden emin olun .


3

Metin kutusundaki değeri kolayca ayarlayabilirsiniz.

İlk olarak,

var getValue = $('#txt_name').val();

Girdiye benzer bir değer ayarladıktan sonra

$('#txt_name').val(getValue);

1

Bunu dene. Kesinlikle işe yarayacak.

var userInput = $('#txt_name').attr('value')

Hayır, olmayacak !! (1) "değer" ( <input type="text" />) niteliği yoksa, tanımsız olarak döner. (2) Bunu böyle yaparsanız <input type="text" value="test" />ve kullanıcı giriş alanına foo $('#txt_name').attr('value')
yazarsa

Bu cevap doğru değil ama aradığım API bu.
Anthony
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.