开发者

Why doesn't an HTML form post work properly on a WP7 device?

I'm currently developing a mobile site and I am having trouble getting it to work on WP7. It's as basic as it doesn't pass data when doing a form submit. When I perform the submit, it will take me to the URL in the action but when I try and access data posted from that page it's null.

I created a basic test page to see if something else on the site was interfering - but that wasn't the case, the following code is that of the test page.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>

</head>
<body>
<form method="post" name="frmConfig" target="_blank" action="http://localhost/SessionTestApp/Default.aspx" >
    <input type="submit" value="Send" /><br />
    <textarea name="testpost" id="testpost" cols="80" rows="30" onclick="this.select()">
    </textarea>
</form>

</body>
</html>

and in the code behind of the aspx page I have the following C#

string strTest = "none";
strTest = Request["testpost"].ToString(); 
Response.Write(strTest);

I have tried it with a text area as above and an input box of type text. I have tried changing the submit to a button and usin开发者_运维百科g javascript to do the post.

Bare in mind this code works on the emulators of

Android 2.1/2.2/2.3

Blackberry v6

and on the real devices of

Android 2.1/2.2

Blackberry v5

Windows Mobile 6.5 - both IE and Opera

It also works in all desktop browsers - I can't find any reason for it but it doesn't work in the WP7 emulator or on a WP7 device. If I have missed something or anyone could tell me why it would be greatly appreciated!

Tom


If I connect to the page on the server (host PC of emulator image) then this works for me.
If I have the HTML on the phone (loaded via NavigateToString) then this doesn't work. :(

How are you loading the content on the phone?


It's fixed itself.
I installed WAMP and posts worked. I thought great... time to inspect IIS settings - at this point it still wasn't working using IIS.
I did a bit more testing, I deleted all my testing html files from IIS's wwwroot and copied them back from apache's www. Tried it again and it worked. Nothing more than deleting a file and recreating it. If anyone has any insight as to why deleting and remaking a file stopped a POST changing to a GET in a request header please enlighten me... I've gone spare over the past couple of days.
Also why did it only affect WP7? I suppose a situation like this it's similar to asking "What is the meaning of life?"

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜