I've made an asp.net website base on bootstrap and I have problem with some asp.net button that not fire the linked server event on iphone/ipad with safari. It is not a javascript/browser problem, because all the javascript on the page is working correctly. I cannot debug iphone/ipad because there is a not a debugger on safari for the device, but I can debug the reuqet on the server, and the only things I've notcie is that in the Request.Form.AllKeys sent by iphone/ipad is missing the one from the asp.net button. That's why the server event is not fired. Here is a Request.Form.AllKeys coming from a windows/android device:
Request.Form.AllKeys
{string[14]}
[0]: "__VIEWSTATE"
[1]: "__VIEWSTATEGENERATOR"
[2]: "__EVENTVALIDATION"
[3]: "ctl00$pageContent$txtname"
[4]: "ctl00$pageContent$txtdesc"
[5]: "ctl00$pageContent$hincredits"
[6]: "ctl00$pageContent$txtprice"
[7]: "ctl00$pageContent$txtcurr"
[8]: "ctl00$pageContent$chkautorenew"
[9]: "ctl00$pageContent$hautorenew"
[10]: "ctl00$pageContent$txtrenewprice"
[11]: "ctl00$pageContent$txtcredits"
[12]: "ctl00$pageContent$txtdays"
[13]: "ctl00$pageContent$btnSave"
and this id the one from iphone/ipad
Request.Form.AllKeys
{string[13]}
[0]: "__VIEWSTATE"
[1]: "__VIEWSTATEGENERATOR"
[2]: "__EVENTVALIDATION"
[3]: "ctl00$pageContent$txtname"
[4]: "ctl00$pageContent$txtdesc"
[5]: "ctl00$pageContent$hincredits"
[6]: "ctl00$pageContent$txtprice"
[7]: "ctl00$pageContent$txtcurr"
[8]: "ctl00$pageContent$chkautorenew"
[9]: "ctl00$pageContent$hautorenew"
[10]: "ctl00$pageContent$txtrenewprice"
[11]: "ctl00$pageContent$txtcredits"
[12]: "ctl00$pageContent$txtdays"
How the event is handled on the server without the __EVENTTARGET and __EVENTARGUMENT parameters? Note that in this page the __doPostBack script is not rendered but the server event is triggered correctly in Windows and Android.
As you can see in the second one is missing the line 13, the one I think should fire the server event. Is it changed something in how asp.net manage the server event defined in WebControls?
In all the pages where the server event are managed with the classic __doPostBack funtcion the event is triggered also in the iPhone/Ipad device. Whe the _doPostBack is missing the server event is not triggered.