-
28-10-2013, 04:44 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Giật trang khi autopostback 1 control trong trang
Mình có 1 trang web nhập liệu thông tin cá nhân, do yêu cầu nhập dữ liệu trên 1 trang dài nên trang nhập liệu của mình nó dài phải cuộn trang.
Khi nhập dữ liệu có 1 control autopostback thì trang web bị giật lên trên đầu, vẫn focus vào control được postback.
Bạn nào có giải pháp gì giúp mình với?View more random threads:
- làm sao để tạo được 1 thanh cuộn lên xuống trong datalist
- Lỗi: Server Error in '/' Application khi upload file image trên hosting
- Lấy dữ liệu từ database hiển thị ra Gridview ASP.NET?
- Xây dựng chức năng tìm kiếm cho site như thế nào?
- Gọi hàm trong ASP.net bằng javascript
- Nhập mã cổ phiếu, lấy 10 thông tin mới nhất về cổ phiếu đó !
- Code check ip của client
- Cách chuyển đổi tiền tệ trong C#
- Hiển thị Property của 1 thư mục, tập tin, hoặc ổ đĩa.
- Làm thế nào thực thi nhiều button submit trên cùng 1 page ?
-
28-10-2013, 06:27 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi tinhz121
Đầu tiên define 1 ID tại vị trí bạn muốn sroll đến sau khi autoPostBack : VD <div id="abc">...</div>
Tại control postback thêm sự kiện javascript để xử lý trước khi post back (onChange, onBlur.... - Vì mình không biết control của bạn là loại j nên ko cụ thể ra đó là sự kiện j được ):
Mã:$("#yourControlID").onChange() { $("form").attr("action", "#abc"); // change url submit }
Vấn đề focus thì thêm dòng code ở phía sever :
Mã:protected void _postBack() { // process post back ..... // focus yourcontrol.focus(); }
-
28-10-2013, 06:41 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thử trong page declaration: <%@ Page MaintainScrollPositionOnPostback="true" %>
hoặc trong code behind: Page.MaintainScrollPositionOnPostBack = true;
-
31-10-2013, 09:55 AM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi nguyenq
-
31-10-2013, 10:23 AM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi lehoai
Mình đã thử cách của bạn rồi mà không được, nó postback được nữa luôn
-
31-10-2013, 12:11 PM #6Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Mình làm được rồi. Cách làm của mình như sau:
1. Trên trang aspx mình thêm đoạn script như sau: ControlID là control cần postback
Mã:$(document).ready(function () { $("#<%=ControlID.ClientID%>").bind('change', function () { $("form").attr("action", "#abc"); // change url submit });
Mã:function ControlFocus(controlName) { $("#" + controlName).focus(); }
Mã:string scriptFocus = "<script language='javascript'>ControlFocus('" + controlName.ClientID + "')</script>"; ScriptManager.RegisterStartupScript(this, this.GetType(), Guid.NewGuid().ToString(), scriptFocus, false);
-
04-11-2013, 12:11 PM #7Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thực ra thì, bạn kéo cái UpdatePanel vào là xong
Chơi ajax luôn ý
-
06-11-2013, 06:36 PM #8Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi tinhz121
-
21-11-2013, 05:40 PM #9Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi betonamu
Form ban đầu xử lý oke rồi, giờ bổ sung thêm khoảng 20 control nữa thì lại giật tung chảo rồi [IMG]images/smilies/21.gif[/IMG]
-
22-11-2013, 03:46 PM #10Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Bạn thêm cái này vào thì nó tải lại trang với đúng vị trí vừa thao tác
Mã:<%@ Page MaintainScrollPositionOnPostback="true" %>
Pallet nhựa Lâm Đồng giải pháp hoàn hảo cho nhà kho Pallet nhựa Lâm Đồng là một giải pháp đa năng và hiệu quả trong việc vận chuyển và lưu trữ hàng hóa. Trong đó, pallet nhựa Lâm Đồng không chỉ đáp...
Pallet nhựa Lâm Đồng giải pháp...