Làm cách nào để đưa gợi ý vào hộp văn bản asp:


102

Làm cách nào để đặt gợi ý / chỗ dành sẵn bên trong asp: TextBox? Khi tôi nói một gợi ý, ý tôi là một số văn bản sẽ biến mất khi người dùng nhấp vào nó. Có cách nào để đạt được điều tương tự bằng cách sử dụng html / css không?


2
Bạn đang hỗ trợ những trình duyệt nào? Trình duyệt HTML5 hỗ trợ placeholderthuộc tính cho hộp văn bản.
rikitikitik

Câu trả lời:


199

các placeholderthuộc tính

Bạn đang tìm kiếm placeholderthuộc tính. Sử dụng nó giống như bất kỳ thuộc tính nào khác bên trong điều khiển ASP.net của bạn:

<asp:textbox id="txtWithHint" placeholder="hint" runat="server"/>

Đừng bận tâm về IDE của bạn (tức là Visual Studio) có thể không biết thuộc tính. Các thuộc tính không được đăng ký với ASP.net được chuyển qua và hiển thị nguyên trạng. Vì vậy, đoạn mã trên (về cơ bản) hiển thị thành:

<input type="text" placeholder="hint"/>

Sử dụng placeholdertài nguyên

Một cách tốt để áp dụng gợi ý cho việc kiểm soát là sử dụng các tài nguyên . Bằng cách này, bạn có thể có các gợi ý bản địa hóa. Giả sử bạn có tệp index.aspx , tệp App_LocalResources / index.aspx.resx của bạn chứa

<data name="WithHint.placeholder">
    <value>hint</value>
</data>

và kiểm soát của bạn trông giống như

<asp:textbox id="txtWithHint" meta:resourcekey="WithHint" runat="server"/>

kết quả được hiển thị sẽ giống như kết quả trong chương trên.

Thêm thuộc tính trong mã phía sau

Giống như bất kỳ thuộc tính nào khác, bạn có thể thêm thuộc tính placeholdervào AttributeCollection:

txtWithHint.Attributes.Add("placeholder", "hint");

2
Vì một số lý do mà thủ thuật tài nguyên "WithHint.placeholder"không hoạt động với tôi.
Mmm

1
Khi sử dụng tài nguyên, bạn có thể thực hiện việc này đối với tệp tài nguyên cục bộ: <asp:TextBox ID="txtWithHint" runat="server" placeholder="<%$ Resources: 52 %>" />hoặc đối với tài nguyên toàn cầu:<asp:TextBox ID="txtWithHint" runat="server" placeholder="<%$ Resources: ResourceFile, ResourceValue %>" />
EvilDr 16/12/19

khi thêm điều khiển trong mã, tất cả những gì bạn cần là: myTextBox.Attributes.Add ("placeholder", "hint");
Eliot Gillum

61

Chỉ cần viết như thế này:

<asp:TextBox ID="TextBox1" runat="server" placeholder="hi test"></asp:TextBox>

19
 <asp:TextBox runat="server" ID="txtPassword" placeholder="Password">

Điều này sẽ hoạt động, bạn có thể đôi khi cảm thấy rằng nó không hoạt động do Intellisence không hiển thị trình giữ chỗ


7

Thêm thuộc tính trình giữ chỗ từ mã phía sau:

txtFilterTerm.Attributes.Add("placeholder", "Filter" + Filter.Name);

Hoặc là

txtFilterTerm.Attributes["placeholder"] = "Filter" + Filter.Name;

Thêm thuộc tính giữ chỗ từ Trang aspx

<asp:TextBox type="text" runat="server" id="txtFilterTerm" placeholder="Filter" />

Hoặc là

<input type="text" id="txtFilterTerm" placeholder="Filter"/>

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.