如何获得Tilda的输入值?

时间:2017-06-25 01:07:36

标签: javascript dom javascript-events

有一个站点构建器,无法通过DOM获取表单输入。该怎么办? :)

此代码不返回任何内容:

$('form').change(function() {
    alert('email input value: ' + $(this).find('input[name=Email]').attr('value'));
    alert('name input value: ' + $(this).find('input[name=Name]').attr('value'));
    alert('phone input value: ' + $(this).find('input[name=Phone]').attr('value'));
});

演示:http://project282540.tilda.ws/

2 个答案:

答案 0 :(得分:0)

虽然我不确定网站构建器,但这应该可行。

$(".t-submit").on({
    click: function() {
    $("input[type=text]").each(function() {
        console.log($(this).val())
    })
  }
})

答案 1 :(得分:0)

要获得<input>的值,您需要使用.val()代替.attr('value')

$('form').change(function() {
  alert('email input value: ' + 
      $(this).find('input[name=Email]').val());
  alert('name input value: ' + 
      $(this).find('input[name=Name]').val());
  alert('phone input value: ' + 
      $(this).find('input[name=Phone]').val());
});

.attr('value')表示HTML中定义的属性。由于HTML的输入标记中没有value属性值,.attr('value')将始终返回空字符串。

以下是一个小型实验:在http://project282540.tilda.ws/中编辑HTML并将value属性添加到其中一个输入标记中。然后,当表单更改时,将提醒新添加的value属性。