通过名称检索输入值,该名称位于具有ID的div中

Lew*_*urn 3 html javascript django jquery

我试图让输入值当用户键入到文本字段中,使用divid="search"name="vehicle"在专区内。我当前完成的操作返回search_text为空字符串。我将代码简化为有助于证明我的问题:

<div id="search">
  <input type="text" name="vehicle">
</div>
Run Code Online (Sandbox Code Playgroud)
$(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);
}
Run Code Online (Sandbox Code Playgroud)

我尝试了以下方法:

'search_text': $('#search input')
Run Code Online (Sandbox Code Playgroud)

'search_text': $('#search').Children("input[name=vehicle]")
Run Code Online (Sandbox Code Playgroud)

谢谢

Car*_*sen 5

首先,您缺少'中的$('#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'
        });
    });
});
Run Code Online (Sandbox Code Playgroud)

演示版

$(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'
        });
    });
});
Run Code Online (Sandbox Code Playgroud)
$(document).ready( function(){
    $('#search').keyup(function() {
        console.log($('#search input[name=vehicle]').val())
    });
});
Run Code Online (Sandbox Code Playgroud)