javascript - jQuery 返回 [object Object] 值(镜像文本输入字段的值)

标签 javascript php jquery forms input

我在一个表单中有 4 个输入:
1 - 姓名
2 - 名字
3 - 姓氏
4 - 员工姓名(隐藏输入)

每次更新/更改姓名输入时,我都需要将姓名文本字段内的值镜像到员工姓名文本字段。我需要实时反射(reflect)更改,并且我能够通过我的代码实现此目的。

我遇到的问题是:我需要检查名称输入是否存在,如果不存在,则使用名字姓氏命名输入值。

我能够成功镜像名称文本值,但在代码必须使用名字姓氏值的情况下,被镜像的值显示为:[object Object]

我完全迷失了,因为 console.log() 显示了正确的结果。

下面是我正在使用的代码:

$( document ).ready(function() {
    jQuery.fn.existsWithValue = function() { 
        return this.length && this.val().length; 
    }

    var name_field = $('form[name="card_form"] input[placeholder="Name"]');

    // Function that mirrors the "Staff Name" and "Name" fields everytime the "Name" field is updated
    // Mirrors "Name", "First Name" or "Last Name" inputs, depending on what input exists...
    $('form[name="card_form"] input[placeholder="Name"], form[name="card_form"] input[placeholder="First Name"], form[name="card_form"] input[placeholder="Last Name"]').bind('keyup change', function(e) {

      if ($(name_field).existsWithValue()) {
        // "Name" input exists, mirror "Name" input value:
        var name_field_final = $('form[name="card_form"] input[placeholder="Name"]').val();
      } else {
        // "Name" input does not exist, mirror "First Name" and "Last Name" input values:
        var first_name = $('form[name="card_form"] input[placeholder="First Name"]').val();
        var last_name = $('form[name="card_form"] input[placeholder="Last Name"]').val();

        var name_field_final = first_name + ' ' + last_name;
      }

      // MIRROR VALUES in "Staff" input:
      $('form[name="card_form"] input[name="staff"]').attr("value", $(name_field_final));

      // DEBUG
      console.log( first_name + " : " + last_name );
    });
  });

最佳答案

问题似乎是由于当属性只能是字符串时将对象设置为值而引起的。最好使用 val()

设置 value 属性

改变

 // MIRROR VALUES in "Staff" input:
  $('form[name="card_form"] input[name="staff"]').attr("value", $(name_field_final));

 // MIRROR VALUES in "Staff" input:
  $('form[name="card_form"] input[name="staff"]').val(name_field_final);

关于javascript - jQuery 返回 [object Object] 值(镜像文本输入字段的值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51795841/

相关文章:

javascript - 使用 Chart.renderer.text 渲染表格

javascript - 谷歌地图信息窗口显示在错误的标记上

javascript - 对 Kendo UI 网格列执行自定义算术运算

jQuery fadeOut sibling (如果可见)

javascript - 如何处理 getElementById 返回 Null

javascript - 如何在 SignalR 2 中获取连接源?

php - 查询连接三个表 yii

php - Cronjob 但适用于 jQuery/Javascript

php - 我在插入 "call to undefined method mysqli_stmt::get_result()"上不断收到此错误

javascript - .attr ('href' )返回未定义