Aku ingin menghapus semua input dan textarea bidang dalam formulir. Ia bekerja seperti berikut ketika menggunakan tombol input dengan reset
kelas:
$(".reset").bind("click", function() {
$("input[type=text], textarea").val("");
});
Ini akan menghapus semua bidang pada halaman, tidak hanya orang-orang dari bentuk. Bagaimana saya pemilih terlihat seperti hanya bentuk yang sebenarnya tombol reset tinggal di?
Untuk jQuery 1.6+:
$(':input','#myform')
.not(':button, :submit, :reset, :hidden')
.val('')
.prop('checked', false)
.prop('selected', false);
Untuk jQuery < 1.6:
$(':input','#myform')
.not(':button, :submit, :reset, :hidden')
.val('')
.removeAttr('checked')
.removeAttr('selected');
Silakan lihat posting ini: https://stackoverflow.com/questions/680241/blank-out-a-form-with-jquery
Atau
$('#myform')[0].reset();
Sebagai jQuery menunjukkan:
Untuk mengambil dan mengubah DOM sifat-sifat seperti
memeriksa
,dipilih
, ataucacat
state dari elemen form, gunakan .prop() metode.
jika anda menggunakan penyeleksi dan membuat nilai-nilai kosong, tidak mengatur ulang bentuk, it's membuat semua kolom yang kosong. Reset adalah untuk membuat bentuk seperti sebelum mengedit setiap tindakan dari pengguna setelah beban dari bentuk dari sisi server. Jika ada masukan dengan nama "username" dan bahwa pengguna prefilled dari sisi server, yang paling solusi pada halaman ini akan menghapus nilai dari input, tidak me-reset ke nilai bagaimana hal itu sebelum pengguna's perubahan. Jika anda perlu untuk me-reset form, gunakan ini:
$('#myform')[0].reset();
jika anda tidak perlu untuk me-reset bentuk, tetapi mengisi semua input dengan beberapa nilai, misalnya nilai kosong, maka anda dapat menggunakan sebagian besar solusi dari komentar lainnya.
Jika seseorang masih membaca thread ini, di sini adalah solusi yang paling sederhana tidak menggunakan jQuery, tapi JavaScript biasa. Jika anda field input dalam form, ada yang sederhana JavaScript reset perintah:
document.getElementById("myform").reset();
Lebih lanjut tentang hal itu di sini: http://www.w3schools.com/jsref/met_form_reset.asp
Cheers!
Mengapa hal itu perlu dilakukan dengan JavaScript sama sekali?
<form>
<!-- snip -->
<input type="reset" value="Reset"/>
</form>
http://www.w3.org/TR/html5/the-input-element.html#attr-input-type-keywords
Mencoba salah satu yang pertama, itu tidak't jelas bidang dengan nilai-nilai default.
Berikut ini's cara untuk melakukannya dengan jQuery, maka:
$('.reset').on('click', function() {
$(this).closest('form').find('input[type=text], textarea').val('');
});
Dengan Javascript anda hanya dapat melakukan ini dengan sintaks ini getElementById("anda-bentuk-id").reset();
anda juga dapat menggunakan jquery dengan memanggil fungsi reset cara ini $('#anda-bentuk-id')[0].reset();
Ingat untuk tidak melupakan [0]
. Anda akan mendapatkan error berikut jika
TypeError: $(...).reset tidak fungsi
JQuery juga menyediakan sebuah acara, anda dapat menggunakan
$('#form_id').pemicu("reset");
Aku mencoba dan bekerja.
Catatan: penting untuk melihat bahwa metode ini hanya akan me-reset formulir anda ke nilai awal yang ditetapkan oleh server pada beban halaman. Ini berarti jika anda input ditetapkan pada nilai 'menetapkan nilai' sebelum anda melakukan perubahan acak, lapangan akan di-reset ke nilai yang sama setelah reset metode ini disebut.
Semoga membantu
Diuji dan diverifikasi kode:
$( document ).ready(function() {
$('#messageForm').submit(function(e){
e.preventDefault();
});
$('#send').click(function(e){
$("#messageForm")[0].reset();
});
});
Javascript harus disertakan dalam $(document).siap
dan itu harus dengan logika anda.
Paling mudah dan solusi terbaik adalah-
$("#bentuk")[0].reset();
Don't gunakan di sini -
$(ini)[0].reset();
Mari kita katakan jika anda ingin menghapus kolom dan kecuali accountType,dalam waktu yang berarti dropdown box akan di-reset ke nilai tertentu,saya.e 'Semua'.Sisa bidang harus reset untuk mengosongkan saya.e kotak teks.Pendekatan ini akan digunakan untuk membersihkan bidang tertentu sebagai kebutuhan kita.
$(':input').not('#accountType').each( function() {
if(this.type=='text' || this.type=='textarea'){
this.value = '';
}
else if(this.type=='radio' || this.type=='checkbox'){
this.checked=false;
}
else if(this.type=='select-one' || this.type=='select-multiple'){
this.value ='All';
}
});
Gunakan Kode ini di Tempat yang anda inginkan untuk Memanggil Normal Fungsi Reset dengan jQuery
setTimeout("reset_form()",2000);
Dan Menulis Fungsi ini Situs jQuery pada Dokumen Siap
<script>
function reset_form()
{
var fm=document.getElementById('form1');
fm.reset();
}
</script>
@using (Ajax.BeginForm("Create", "AcceptanceQualityDefect", new AjaxOptions()
{
OnSuccess = "ClearInput",
HttpMethod = "Post",
UpdateTargetId = "defect-list",
InsertionMode = InsertionMode.Replace
}, new { @id = "frmID" }))
frmID
adalah identifikasi bentukOnSuccess
operasi kita memanggil fungsi JavaScript dengan nama "ClearInput
"