使用 Dojo 在控制台中显示来自表单的数据

Show in console the data from form with Dojo

我在控制台中显示用户输入的数据时遇到问题(仅使用 Dojo,按下提交按钮后)。现在它显示 "Name: [Widget dijit.form.TextBox, dijit_form_TextBox_2]"

我的 HTML 非动态代码:

  <div class="NameContainer">
    <label class="label1" for="name">Name:</label>
    <input data-dojo-attach-point="nameInputData" type="text" name="name1"
        data-dojo-type="dijit/form/TextBox"
        data-dojo-props="trim:true, propercase:true"/>
  </div>
<button data-dojo-type="dijit.form.Button" type="button"  data-dojo-attach-point="submitButton"  data-dojo-attach-event="onClick:_submitDetails">Submit</button>

JS函数(我也试过this.nameData.value,但是好像没有):

_submitDetails: function () {
      var nameData = this.nameData;
      console.log("Name: " + nameData);
    }

使用 , 而不是 +,这将传递一个可在屏幕上单击的单独参数,而不是对对象调用 toString() 以将其与字符串连接.

console.log("Name: ", nameData);

我实际上更喜欢下面的,因为它给了你变量的名称

console.log({nameData});

对于非交互式控制台,比如node JS,你可以使用JSON.stringify把它变成一个可读的字符串,只要对象没有循环引用