Как я могу поместить местозаполнитель в тег текстового поля struts?

У меня ошибка, потому что я использую атрибут placeholder в тегах struts....

<html:text property="name" styleClass="form-control" placeholder="some text"/>

как решить проблему, помогите мне.

Спасибо в Advance.

Ответы

Ответ 1

Используйте jQuery attr, как показано ниже:

<html:text property="name" styleClass="form-control" styleId="abc" />

Код JavaScript:

$(function() {
    $("#abc").attr("placeholder", "some text");
});

Ответ 2

Просто замените:

<html:text property="name" styleClass="form-control" placeholder="some text" />

С

<input type="text" name="property" class="form-control" placeholder="some text"
                             │
                             └─── Form property ────┐
                                                    │
       value="<bean:write name="name" property="property" />" />
                                  │                
               Name of form-bean ─┘                

Значение атрибута name должно соответствовать свойству формы для отключения запроса.

Ответ 3

В тегах struts имеется атрибут placeholder, также называемый placeholder

<s:form action="Welcome">
  <s:textfield name="username" label="Username" placeholder="Enter Your Name" />
  <s:password name="password" label="Password" placeholder="Password"/>
  <s:submit/>
</s:form>

Edit

Нет атрибута с именем заполнителя (извините за путаницу), но если вы введете местозаполнитель, как в моем примере кода, форма struts будет оцениваться как ниже

<form id="Welcome" name="Welcome" action="/User/Welcome.action" method="post">
  <input type="text" name="username" value="" id="Welcome_username" placeholder="Enter your Name">
  <input type="password" name="password" id="Welcome_password" placeholder="Password">
</form>

Если вы заметили, атрибут placeholder отобразится просто отлично с полной формой

Ответ 4

Вы можете попробовать с помощью jQuery добавить этот атрибут, когда документ будет готов:

<html:text property="name" styleClass="form-control" styleId="xyz" />

затем попробуйте добавить этот jquery:

$(function(){
    $(':input').each(function(){
       $(this).attr("placeholder", this.id);
    });
});

или этот ответ может помочь вам.

Ответ 5

Простая альтернатива с использованием события javascript выглядит следующим образом:

<html:text property="username" value="Username" onclick="this.value=''" />