Tôi có một trang đơn giản, đó là cấu trúc như sau (pseudo code):UIWebView và IPhone nội dung không postback (ASP.NET vấn đề trình duyệt Capability)
<aspx page>
<ascx control>
<asp:dropdownlist id="dd1" autoPostback=true />
<asp:dropdownlist id="dd2" />
</ascx control>
</aspx page>
Trong bất kỳ trình duyệt máy tính để bàn, bài DD1 trở lại và sự kiện máy chủ "SelectedIndexChanged" được kích hoạt. Tuy nhiên trong safari IPhone hoặc một webview IPhone, không có postback được thực hiện. Tôi biết điều này bởi vì không có chỉ báo hoạt động mạng nào được hiển thị và tôi đã ghép một trình gỡ rối đến trang web nắm bắt tất cả các sự kiện serverside và nó không bao giờ bị tấn công. Đôi khi, khoảng một lần mỗi 2 giờ, các postback làm việc trên iphone, nhưng rất hiếm khi và không liên tục.
Dd1 là danh sách thả xuống ngày tải trình đơn thời gian thả xuống phụ thuộc vào mục đã chọn trong menu thả xuống ngày. Biểu mẫu này được tái sử dụng ở nhiều nơi và tôi không muốn thay đổi cấu trúc cơ bản trừ khi đó là nỗ lực mương cuối cùng.
Javascript được bật trong cài đặt safari.
Đủ đơn giản phải không? Tôi đang cố gắng tìm hiểu làm thế nào để gỡ lỗi javascript lỗi trên một webview, nhưng tôi đã tự hỏi nếu có ai biết những gì kỳ lạ nó đã tạo ra hành vi này.
Đây là loại hack. Nó sạch hơn để sửa App_Browsers hoặc cập nhật danh sách trình duyệt toàn cầu. Xem workaround được đăng bởi pravav rastogi (làm việc cho Microsoft) tại http://connect.microsoft.com/VisualStudio/feedback/details/631438 – Brian
Trong các ý kiến trong liên kết mà ai đó đề cập đến sửa chữa sẽ được phát hành trong thời gian chạy asp.net tiếp theo phát hành ... như vậy là cố định trong .net 4.5? –
Xin lỗi, nhưng tôi không biết. Bạn có thể thử cài đặt nó và xem bản sao của tập tin trình duyệt có được cập nhật hay không. Chạy một diff trên '\ Windows \ Microsoft.NET \ Framework [X1] \ v [X2] \ Config \ Trình duyệt \ *'. – Brian