【问题标题】:Retrieve the input value by its name, which is within a div with an id按名称检索输入值,该名称位于具有 id 的 div 中
【发布时间】:2020-01-19 07:51:18
【问题描述】:

我试图在用户输入文本字段时获取输入值,使用 div 中的divid="search"name="vehicle"。我目前所做的将search_text 作为空字符串返回。我已将代码简化为帮助证明我的问题:

<div id="search">
  <input type="text" name="vehicle">
</div>
$(document).ready(function() {
  $('#search').keyup(function() {
    $.ajax({
      type: "POST",
      url: "http://localhost:8000/overview",
      data: {
        'search_text': $('#search').Children("input[name=vehicle]")
      },
      success: searchSuccess,
      dataType: 'html'
    });
  });
});

function searchSuccess(data, textStatus, jqXHR) {
  $('#search-results').html(data);
}

我尝试了以下方法:

'search_text': $('#search input')

'search_text': $('#search').Children("input[name=vehicle]")

谢谢

【问题讨论】:

  • 所以当用户输入你想要输入的值时?对吗?
  • 请注意您在$('#search) 中缺少'
  • Children需要children,JS区分大小写。

标签: javascript jquery html django


【解决方案1】:

首先,您在$('#search) 中缺少'

其次,如果您希望从输入中获取值,则需要使用.val()

$(document).ready( function(){
    $('#search').keyup(function() {
        $.ajax({
            type: "POST",
            url: "http://localhost:8000/overview",
            data: {
                'search_text': $('#search input[name=vehicle]').val()
            },
            success: searchSuccess,
            dataType: 'html'
        });
    });
});

演示

$(document).ready( function(){
    $('#search').keyup(function() {
        console.log($('#search input[name=vehicle]').val())
    });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="search">
  <input type="text" name="vehicle">
</div>

【讨论】:

  • 感谢您的快速回答。我已经替换了这行代码,但它仍然返回一个空字符串。
  • @LewisHepburn 试试看我添加的演示,你应该可以工作,尝试在你的 ajax 之前添加console.log($('#search input[name=vehicle]').val())
  • 非常感谢卡斯滕!事实证明,问题在于我的应用程序没有更新 .js 文件。
【解决方案2】:

或者你可以像这样使用 oninput 事件

 document.querySelector('input[name=vehicle]').oninput=function(){
    alert(this.value)
 };

OR

 $('input[name=vehicle]').oninput(function(){
 alert(this.value)
 });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-26
    • 1970-01-01
    • 1970-01-01
    • 2011-04-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多