Saya menggunakan plugin placeholder jQuery (https://github.com/danielstocks/jQuery-Placeholder). Saya perlu mengubah teks placeholder dengan perubahan pada menu dropdown. Tapi itu tidak berubah. Ini kodenya:
$(function () {
$('input[placeholder], textarea[placeholder]').placeholder();
$('#serMemdd').change(function () {
var k = $(this).val();
if (k == 1) {
$("#serMemtb").attr("placeholder", "Type a name (Lastname, Firstname)").placeholder();
}
else if (k == 2) {
$("#serMemtb").attr("placeholder", "Type an ID").placeholder();
}
else if (k == 3) {
$("#serMemtb").attr("placeholder", "Type a Location").placeholder();
}
});
});
Html saya:
<div class="filterbox">
<select name="ddselect" id="serMemdd">
<option value="1" selected="selected">Search by Name</option>
<option value="2">Search by ID</option>
<option value="3">Search by Location</option>
</select>
<input id="serMemtb" type="text" style="width: 490px" placeholder="Type a name (Lastname, Firstname)" />
<input id="seMemBut" type="button" value="Search" />
</div>
Adakah yang bisa mengetahui hal ini?
jquery
jquery-plugins
Krishh
sumber
sumber
Jawaban:
Salin dan tempel kode ini di file js Anda, ini akan mengubah semua teks placeholder dari seluruh situs.
sumber
if
pernyataan-, karena biasanya Anda ingin mengatur placeholder tidak peduli apakah elemen input memiliki nilai atau tidak. Jika tidak, placeholder tidak akan ditampilkan jika pengguna mengosongkan elemen input.Anda dapat menggunakan kode berikut untuk memperbarui placeholder dengan id:
sumber
cukup Anda bisa menggunakan
di mana, jika variabel adalah string maka Anda dapat menggunakan seperti di atas, jika variabel menggantinya dengan nama seperti "variabel" tanpa tanda kutip ganda.
misalnya:
$("#youtextboxid").attr("placeholder", variable);
itu akan berhasil.sumber
Pengaya tidak terlihat sangat kuat. Jika Anda menelepon
.placeholder()
lagi, itu membuatPlaceholder
contoh baru sementara acara masih terikat dengan yang lama.Melihat kodenya, sepertinya Anda bisa melakukannya:
EDIT
placeholder
itu atribut HTML5 , tebak siapa yang tidak mendukungnya?Plugin Anda sepertinya tidak benar-benar membantu Anda mengatasi fakta bahwa IE tidak mendukungnya, jadi sementara solusi saya berfungsi, plugin Anda tidak. Mengapa Anda tidak menemukannya?
sumber
$(this).val()
adalah sebuah string. GunakanparseInt($(this).val(), 10)
atau periksa '1'. Sepuluh adalah untuk menunjukkan basis 10.Atau
Plugin lainnya
ori telah menarik perhatian saya bahwa plugin yang Anda gunakan tidak mengatasi kegagalan HTML IEs.
Coba sesuatu seperti ini: http://archive.plugins.jquery.com/project/input-placeholder
sumber
$('#serMemdd').change(function () {
contoh kerja placeholder dinamis menggunakan Javascript dan Jquery http://jsfiddle.net/ogk2L14n/1/
sumber
ubah teks placeholder menggunakan jquery
coba ini
sumber
Memindahkan baris pertama Anda ke bawah akan melakukannya untuk saya: http://jsfiddle.net/tcloninger/SEmNX/
sumber
Jika input ada di dalam div daripada Anda dapat mencoba ini:
sumber
coba ini
sumber
ini bekerja untuk saya:
tapi sekarang ini tidak berfungsi:
sumber
sumber
sumber