2012-01-02 2 views
1

Как проверить, было ли нажато изображение отправки через Request.Form?Проверьте, не было ли нажата кнопка ИЗОБРАЖЕНИЕ через Request.Form

следующие проверки, если представить кнопка была нажата через Request.Form, возвращая значение кнопки отправки, если нажата:

<form action="Default.aspx" runat="server" method="post" id="newform"> 
<input type="submit" id="submit" value="Submit!" runat="server" /> 
</form> 

<% 
if (Request.Form["submit"] != null) //TRUE 
{ 
    Response.Write("Submit button pushed"); 
} 

Response.Write(Request.Form["submit"]); //Returns "Submit!" 
%> 

следующие проверки, если представить IMAGE была нажата через Request.Form, но он НЕ возвращает никаких значений после того, как было нажато изображение:

<form action="Default.aspx" runat="server" method="post" id="newform"> 
<input type="image" id="subimg" src="solar_image.gif" alt="Can't show image" value="Submit Image!" runat="server"/> 
</form> 

<% 
if (Request.Form["subimg"] != null) //FALSE 
{ 
    Response.Write("Image Submit button clicked!"); 
} 

Response.Write(Request.Form["subimg"]); //Doesn't return "Submit Image!" 
%> 
+0

В каком браузере вы видите это? Работает ли это в других браузерах? –

+0

Я пробовал IE и Firefox. Тот же результат, что и раньше. – Birdman

ответ

1

Этот код работает для меня в IE 9 и Chrome. Единственный способ, которым я могу реплицироваться, - это использовать Firefox в качестве браузера.

Эта ссылка проливает свет на вопросах, Firefox 4.0 beta — as well as IE and Opera — do not send name/value for input type=”image”; only .x and .y coordinates are sent.

Следующая проверка работает в любом браузере, я опробованный:

//Checking both x and y co-ordinates to be doubly safe 
Request.Form["subimg.x"] != null && Request.Form["subimg.y"] != null 
0

Согласно MDN documentation:

«Gecko 2.0 только посылает координаты x и y при нажатии, не более имя/значение элемента «

Попробуйте распечатать Request.Form. Если в ответе есть x и y, вы можете обнаружить, что вместо этого было нажато изображение.

Смежные вопросы