jQuery를 사용하여 자리 표시자 텍스트 변경
저는 jQuery 플레이스홀더 플러그인(https://github.com/danielstocks/jQuery-Placeholder) 을 사용하고 있습니다.드롭다운 메뉴의 변경으로 자리 표시자 텍스트를 변경해야 합니다.하지만 그것은 변하지 않습니다.코드는 다음과 같습니다.
$(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:
<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>
누가 이것을 알아낼 수 있습니까?
$(document).ready(function(){
$('form').find("input[type=textarea], input[type=password], textarea").each(function(ev)
{
if(!$(this).val()) {
$(this).attr("placeholder", "Type your answer here");
}
});
});
이 코드를 복사하여 js 파일에 붙여넣으면 전체 사이트의 모든 자리 표시자 텍스트가 변경됩니다.
다음 코드를 사용하여 ID별로 자리 표시자를 업데이트할 수 있습니다.
$("#serMemtb").attr("placeholder", "Type a Location").val("").focus().blur();
간단히 사용할 수 있습니다.
$("#yourtextboxid").attr("placeholder", "variable");
여기서 변수가 문자열인 경우 위와 같이 사용할 수 있으며 변수인 경우 큰따옴표 없이 "variable"과 같은 이름으로 대체할 수 있습니다.
예:$("#youtextboxid").attr("placeholder", variable);
그건 작동할 것이다.
플러그인이 매우 견고해 보이지 않습니다.전화하시면.placeholder()
다시, 그것은 새로운 것을 만듭니다.Placeholder
이벤트가 여전히 이전 이벤트에 바인딩되어 있는 동안 인스턴스.
코드를 보면 다음과 같은 작업을 수행할 수 있을 것 같습니다.
$("#serMemtb").attr("placeholder", "Type a name (Lastname, Firstname)").blur();
편집
placeholder
HTML5 속성입니다. 누가 그것을 지원하지 않는지 맞춰보세요.
당신의 플러그인은 IE가 그것을 지원하지 않는다는 사실을 극복하는 데 도움이 되지 않는 것 같습니다. 그래서 제 솔루션이 작동하는 동안 당신의 플러그인은 작동하지 않습니다.가능한 것을 찾아보는 게 어때요?
$(this).val()
문자열입니다. 사용parseInt($(this).val(), 10)
또는 '1'을 확인합니다.10은 기본 10을 나타냅니다.
$(function () {
$('input[placeholder], textarea[placeholder]').blur();
$('#serMemdd').change(function () {
var k = $(this).val();
if (k == '1') {
$("#serMemtb").attr("placeholder", "Type a name (Lastname, Firstname)").blur();
}
else if (k == '2') {
$("#serMemtb").attr("placeholder", "Type an ID").blur();
}
else if (k == '3') {
$("#serMemtb").attr("placeholder", "Type a Location").blur();
}
});
});
또는
$(function () {
$('input[placeholder], textarea[placeholder]').placeholder();
$('#serMemdd').change(function () {
var k = parseInt($(this).val(), 10);
if (k == 1) {
$("#serMemtb").attr("placeholder", "Type a name (Lastname, Firstname)").blur();
}
else if (k == 2) {
$("#serMemtb").attr("placeholder", "Type an ID").blur();
}
else if (k == 3) {
$("#serMemtb").attr("placeholder", "Type a Location").blur();
}
});
});
기타 플러그인
ori는 당신이 사용하고 있는 플러그인이 IEs HTML 오류를 극복하지 못한다는 것을 알게 되었습니다.
다음과 같은 방법을 시도해 보십시오. http://archive.plugins.jquery.com/project/input-placeholder
$(document).ready(function(){
$("input[type=search]").attr("placeholder","this is a test");
});
Javascript 및 Jquery http://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");
}
}
jquery를 사용하여 자리 표시자 텍스트 변경
이것을 먹어보세요.
$('#selector').attr("placeholder", "Type placeholder");
입력이 div 내부에 있는 경우 다음을 시도할 수 있습니다.
$('#div_id input').attr("placeholder", "placeholder text");
이것을 먹어보세요.
$('#Selector_ID').attr("placeholder", "your Placeholder");
$(document).ready(function(){
$('form').find("input[type=search]").each(function(ev)
{
$(this).attr("placeholder", "Search Whatever you want");
});
});
첫 번째 줄을 맨 아래로 이동하면 됩니다. http://jsfiddle.net/tcloninger/SEmNX/
$(function () {
$('#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();
}
});
$('input[placeholder], textarea[placeholder]').placeholder();
});
이것은 나에게 효과가 있었습니다.
jQuery('form').attr("placeholder","Wert eingeben");
하지만 이제 이것은 작동하지 않습니다.
// Prioritize "important" elements on medium.
skel.on('+medium -medium', function() {
jQuery.prioritize(
'.important\\28 medium\\29',
skel.breakpoint('medium').active
);
});
언급URL : https://stackoverflow.com/questions/9232810/change-placeholder-text-using-jquery
'source' 카테고리의 다른 글
장고 쉘에서 모듈을 다시 로드하는 방법은 무엇입니까? (0) | 2023.08.10 |
---|---|
도커 컨테이너에 오라클 클라이언트 설치 (0) | 2023.08.10 |
#1093 표 '표'는 '삭제' 대상과 별도의 데이터 소스로 2회 지정 (0) | 2023.08.10 |
Bluebird의 util.toFastProperties 함수는 객체의 속성을 어떻게 "빠르게" 만듭니까? (0) | 2023.08.10 |
A의의 높이방법는 ▁how법A의의 높이방법는 ▁how법A의의 높이방법는 ▁how법??? (0) | 2023.08.10 |