Атрибут MVC 3 Like Remote - PullRequest
       4

Атрибут MVC 3 Like Remote

0 голосов
/ 03 августа 2011

Мне нужна функция, подобная атрибуту Remote, но не для проверки, а для обновления другого примера поля:

public class MyModel
{
  public string Name{get;set;}
  public string Surname{get;set;}

  [RemoteUpdate("Name,Surname")]
  public string FullName{get{return Name + " " + Surname}}
}

В этом случае FullName будет только меткой, где.Когда кто-то фокусируется из поля Name и Surname, я хочу, чтобы FullName был обновлен.

Возможно ли это?

Ответы [ 2 ]

1 голос
/ 03 августа 2011

Я бы порекомендовал вам полностью реализовать это на стороне клиента, используя javascript.

Вот очень простой пример для этого, используя jQuery:

<html>
<head>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.js"></script>
</head>
<body>
    <form>
        Name:
        <input id="name" type="text"/>
        Surname:
        <input id="surname" type="text"/>
        <span id="fullname"></span>
    </form>

    <script type="text/javascript">
        jQuery(document).ready(function() {
         $('#surname, #name').keyup(function() { $('#fullname').text($('#name').val() + ' ' + $('#surname').val()); });
        });
    </script>
</html>

Событие keyupобновляет тег span при каждом нажатии клавиши.Если вы хотите обновить его только при выходе из текстового поля, вы можете использовать событие change.

0 голосов
/ 03 августа 2011

Вам нужно использовать либо вызов jQuery .ajax (), либо операцию .get (), когда ваши текстовые поля на стороне клиента теряют фокус (т. Е. Размывает), чтобы затем вызывать удаленный URL-адрес и делать все, что вам нужно. Я не передавал никаких параметров в запрос на получение здесь (вы можете), и, конечно, это общий пример - но идея здесь в том, как сделать удаленный вызов



 <input id="surname" type="text"/>
 <input id="fullname" type="text"/>

<script>
$('#surname').blur(function() {
 $.get('remotefunctions/index', function(data) {
   $('#fullname').html(data);
 });
});
</script>


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...