Как вызвать событие после проигрывающего фокуса от текстового поля, которое было просто заполнено?

У меня есть два текстовых поля: A и использование B Html.textboxfor. TextBox включенного и Текстовое поле 'B' отключены.

Когда я ввожу значения в Текстовом поле и фокус изменения далеко от текстового поля, Текстовое поле 'B' должно быть заполнено с некоторым значением.

Например: Я ввожу значение TextBox = "Король"; если фокус потерян от поля, значением в Текстовом поле B должен быть "Peter", который должен быть переполнен автоматически.

5
задан TylerH 26 July 2018 в 19:05
поделиться

3 ответа

Вы можете просто дать текстовому полю атрибут onblur и вызвать метод, который заполнит второе текстовое поле

что-то вроде:

   <script language="javascript">
       function fllB()
       {
          var txtB = document.getElementById("txtB");
          var txtA = document.getElementById("txtA");

          if (txtA.value == "King")
          {
              txtB.value = "Peter";
          }
        }
    </script>

<input type="text" id="txtA" onblur="fillB()" />
<input type="text" id="txtB" />
2
ответ дан 15 December 2019 в 06:13
поделиться

Похоже, что вы хотите, чтобы второе текстовое поле всегда было отключено? Если да, то включите свойство disabled в textboxfor:

<%: Html.TextBoxFor( x => x.XXX, new { id = "txtA" }) %>    
<%: Html.TextBoxFor( x => x.XXX, new { id = "txtB", disabled="true" }) %>

Для JavaScript, я предполагаю, что вы используете jquery, который включен в mvc: (Если вы не хотите очищать txtb, если значение удалено из поля A, то удалите оператор else)

    $(function() 
{
    $("#txtA").change(function()
    {
        if ($("#txtA").val().length > 0) {

            $("#txtB").val(function()
            {
                // Do something to populate #txtb ex: Peter
                var myVar = "Peter";

                return myVar;
            }); 
        }
        else 
        {
            $("#txtB").val("");
        }
    });
});
0
ответ дан 15 December 2019 в 06:13
поделиться

jQuery:

<script type="text/javascript">
  $(function()
  {

    $("#txtA").change(function()
    {
      if(this.value == "King") 
        $("#txtB").attr("disabled", "").val( "Peter" );
    });

  });
</script>
-1
ответ дан 15 December 2019 в 06:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: