تغيير سمة "العنصر النائب" لعناصر إدخال HTML5 بشكل ديناميكي باستخدام JavaScript
-
29-09-2019 - |
سؤال
أحاول تحديث HTML5 ديناميكيًا placeholder
سمة حقل نص باستخدام jQuery.
$("textarea").attr("placeholder", "New placeholder text");
من Firebug ، يمكنني ملاحظة أن placeholder
السمة تتغير بالفعل. لكن في المقدمة textarea
العنصر ، يبقى كما هو. أي اقتراحات؟
المحلول
إذا كنت تستخدم Firebug ، يمكنني أن أفترض أنك تستخدم Firefox ، ولا تدعم Firefox بعد placeholder
سمة في حقول الإدخال نفسها.
لقد حاولت للتو على Chrome لـ Mac ويدعم النص النائب على Textareas (ويتغير عبر JavaScript)
تحديث 2015: في بعض الأحيان اكتسبت سمعة على هذه الإجابة ، لذلك أريد أن أوضح أن هذا تم قبوله على أنه صحيح لأنه في الوقت الذي لم يدعم فيه Firefox 3.6 سمة العنصر النائب. الإصدار 4 ثم أضاف الدعم ("تم إصلاح المشكلة" لن يكون عادلاً) ، لذا فإن مدونة OP تعمل كما هو متوقع منذ ذلك الحين.
نصائح أخرى
جرب هذا :
$('#inputTextID').attr("placeholder","placeholder text");
أعتقد أن عليك القيام بذلك:
$("textarea").val('');
$("textarea").attr("placeholder", "New placeholder text");
<label for="myname">Name *</label>
<input type="text" name="myname" id="myname" title="Please enter your name"
pattern="[A-Za-z ]+, [A-Za-z ]+"
autofocus required placeholder="Last, First" />
ثم تريد تحديد العنصر النائب واستبدال هذا النص بـ new text that you want to enter
.
$("input[placeholder]").attr("placeholder", "This is new text");
هذا سيحل محل نص Last, First
إلى This is new text
.
مثال على العمل النائب الديناميكي باستخدام JavaScript و jQueryhttp://jsfiddle.net/ogk2l14n/1/
<input type="text" id="textbox">
<select id="selection" onchange="changeplh()">
<option>one</option>
<option>two</option>
<option>three</option>
</select>
function changeplh(){
debugger;
var sel = document.getElementById("selection");
var textbx = document.getElementById("textbox");
var indexe = sel.selectedIndex;
if(indexe == 0) {
$("#textbox").attr("placeholder", "age");
}
if(indexe == 1) {
$("#textbox").attr("placeholder", "name");
}
}
لغة البرمجة:
<input type="text" placeholder="entername" id="fname"/>
JS:
$("#fname").attr("placeholder", "New placeholder text");