为什么AJAX响应返回未定义


Why is AJAX response returning undefined?

返回undefined,即使var roommate包含正确的值:

JS

roommate = $("#roommate").val();
$.post('roommateSearch.php', 'val=' + $(roommate).val(), function (response) {
    alert(response);
});

roommateSearch.php

<?php
$roommate = $_POST['val'];
echo "I got your value!".$roommate;
?>
var roommate = $("#roommate").val(); 
$.post('roommateSearch.php', 'val=' + roommate, function (response) {
    alert(response);
});

室友保存了一个值,所以你可以这样使用它:'val=' + roommate

也许可以整理一下代码。分号很重要:

var roommate = $("#roommate").val(); //semicolon here
$.post('roommateSearch.php', 'val=' + roommate, function (response) {
    alert(response);
}); //proper function closing here

并且,roommate已经是一个值,所以只需使用它的名称