1. ホーム
  2. jquery

[解決済み】jQueryでプレースホルダーのテキストを変更する

2022-04-03 01:06:28

質問

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ファイルに貼り付けると、サイト全体のプレースホルダーテキストが変更されます。