1

У меня есть веб-приложение asp.net MVC.Проблема, связанная с отправкой HTTPPOST ActionMethod в MVC

я есть кнопка ввода:

<input type="submit" name="Report" value="To File" id="rptToFile" /> 

У меня есть еще один вход текстовое поле:

<input type="text" id="txtMemItem1" name="" /> 

, когда пользователь нажимает войти в TextBox я написал код, чтобы открыть новое окно:

но проблема в том, что: нажав enter, он вызывает метод HTTPPOST Action в контроллере. Я не хочу его отправлять на EnterPress, но хочу открыть всплывающее окно.

как я могу решить свою проблему ???

БЛАГОДАРЯ

ответ

1

То есть по умолчанию поведение HTML-форм Всякий раз, когда сосредоточены на контроле формы и вы нажали кнопку ввода, которая будет отправлена ​​на сервер.

Альтернативное решение этой проблемы может быть написать яваскрипта onkeypress событие и проверить, если keyCode is 13 (enter), то return false и открыть всплывающее окно еще return true.

HTML

<input type="text" onKeyPress="keyPressed(event)" .../> 

Javascript

function keyPressed(event) 
{ 
    var code = (e.keyCode ? e.keyCode : e.which); 
    if(code == 13) 
    { 
     //open a popup here. 
     return false; 
    } 
    return true; 
} 

В качестве альтернативы, если вам не нужно, чтобы отправить форму когда-либо, то вы можете использовать что-то вроде ниже тоже.

<form onsubmit="return false" ></form> 
Смежные вопросы