Bạn nên tạo tiện ích SuggestBox tùy chỉnh của riêng mình, sau đó bạn có thể đặt thuộc tính trình giữ chỗ cho nó. Ví dụ:
public class CustomSuggestBox extends SuggestBox {
private String placeHolderText = "";
public String getPlaceHolderText() {
return placeHolderText;
}
public void setPlaceHolderText(String text) {
placeHolderText = text;
getTextBox().getElement().setAttribute("placeHolder", placeHolderText);
}
}
Vì vậy, bạn có thể đặt thuộc tính này trong giao diện người dùng.
<widgets:CustomSuggestBox ui:field="cSuggestBox" placeHolderText="someText" />
PS: Chỉ hoạt động trong trình duyệt hiện đại. Đối với việc thực hiện nó một cách chính xác cho các trình duyệt cũ cũng kiểm tra của bên thứ ba lib wogwt, nó có TextBoxWithPlaceholder lớp mà kéo dài TextBox:
/**
* A text box that displays a placeholder string when empty
*
* <h3>CSS Style Rules</h3>
* <ul class='css'>
* <li>.wogwt-TextBoxWithPlaceholder { primary style }</li>
* <li>.wogwt-TextBoxWithPlaceholder-placeholder { dependent style set when
* the placeholder is displayed }</li>
* </ul>
*/
Trong trường hợp đó bạn có thể gửi thông điệp này TextBoxWithPlaceholder
's dụ để SuggestBox(SuggestOracle oracle, TextBoxBase box)
constructor.
Nguồn
2012-02-16 15:48:37
Bạn có thể xác định bất kỳ thuộc tính bổ sung thích ứng [giải pháp này] (http://stackoverflow.com/questions/10450987/how-to-add-a-placeholder-to-a-gwt-text-input-field/38316205#38316205). –