2016-04-21 3 views
0

У меня есть запрос GET, который извлекает некоторую информацию из серверной функции и добавляет данные в серию div. Однако, когда я console.log ответ, я получил весь HTML для веб-сайта, а не только значения, которые мне нужны.Добавить данные из запроса GET на div

Запрос

$('#verify').click(function() { 
    var parameters = { 
    firstName: $('#firstName').val(), 
    lastName: $('#lastName').val(), 
    email: $('#email').val() }; 
    $.get('/verify', parameters, function(data) { 
    console.log(data); //Returns full body of HTML 
    $('#firstLast').val(data); // Doesn't work 
    }); 
}); 

console.log

<!DOCTYPE html> 
<html> 
    <head></head> 
    <title> 
     Demo 
     <meta charset="utf-8"> 
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
     <meta name="description" content="Demo project"> 
     <meta name="viewport" content="width=device-width, initial-scale=1"> 
     <link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css"> 
     <style type="text/css"></style> 
    </title> 
    <body> 
     <form method="post" action="post" id="plans" class="plans"><input id="firstName" type="text" name="firstName" value="rhys"><input id="lastName" type="text" name="lastName" value="edwards"><input id="email" type="text" name="email" value="@rhysedwards.com"><input id="submit" type="submit" name="submit" value="submit"></form> 
     <div id="firstLast">[email protected]: false</div> 
     <div id="firstDotLast">[email protected]: false</div> 
     <div id="fInitialLastName">[email protected]: false</div> 
     <div id="fInitialDotLastName">[email protected]: false</div> 
     <div id="firstNameLInitial">[email protected]: false</div> 
     <div id="firstNameDotLInitial">[email protected]: false</div> 
     <div id="firstNameOnly">[email protected]: true</div> 
     <div id="lastNameOnly">[email protected]: false</div> 
     <div id="firstNameUnderscoreLastName">[email protected]: false</div> 
     <div id="fInitialUnderscoreLastName">[email protected]: false</div> 
     <div id="firstNameUnderscoreLInitial">[email protected]: false</div> 
     <input id="verify" name="verify" value="verify" type="submit"><script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script><script src="./javascripts/script.js"></script> 
    </body> 
</html> 

Внутри этого console.log, что мне нужно:

<div id="firstLast">[email protected]: false</div> 
<div id="firstDotLast">[email protected]: false</div> 
<div id="fInitialLastName">[email protected]: false</div> 
<div id="fInitialDotLastName">[email protected]: false</div>  
<div id="firstNameLInitial">[email protected]: false</div> 
<div id="firstNameDotLInitial">[email protected]: false</div> 
<div id="firstNameOnly">[email protected]: true</div> 
<div id="lastNameOnly">[email protected]: false</div> 
<div id="firstNameUnderscoreLastName">[email protected]: false</div> 
<div id="fInitialUnderscoreLastName">[email protected]: false</div> 
<div id="firstNameUnderscoreLInitial">[email protected]: false</div> 

Джейд шаблона:

block content 
    form(method='post', action='post', class='plans', id='plans') 
     input#firstName(type='text', name='firstName' value="rhys") 
     input#lastName(type='text', name='lastName' value="edwards") 
     input#email(type='text', name='email' value="@rhysedwards.com") 
     input#submit(type='submit', name='submit', value='submit') 
    #firstLast !{resultA} 
    #firstDotLast !{resultB} 
    #fInitialLastName !{resultC} 
    #fInitialDotLastName !{resultD} 
    #firstNameLInitial !{resultE} 
    #firstNameDotLInitial !{resultF} 
    #firstNameOnly !{resultG} 
    #lastNameOnly !{resultH} 
    #firstNameUnderscoreLastName !{resultI} 
    #fInitialUnderscoreLastName !{resultJ} 
    #firstNameUnderscoreLInitial !{resultK} 
    input#verify(name='verify', value='verify', type='submit') 

Как получить значение div для каждого из них из параметра data?

+0

в div элемента Вы можете изменить код на стороне сервера, чтобы вернуть только то, что вам нужно? – WillardSolutions

+0

Если ответ не дает вам нужные данные, вам необходимо изменить функцию сервера, ответственную за это. –

+0

Замена .val на .html сделала трюк. Теперь, чтобы узнать, почему встречается целая страница. Как радостно. –

ответ

1

Поскольку вы помещаете данные для использования $('#firstLast').html(data);

.val() //is used for input elements 
+0

Отлично, что получает все данные на странице красиво. Приветствия. –