Это невозможно.
Javascript работает в потоке пользовательского интерфейса; если ваш код ожидает ответа сервера, браузер должен оставаться заблокированным.
Вместо этого вам нужно вернуть значение с помощью обратного вызова:
function get_char_val(merk, callback)
{
var returnValue = null;
$.ajax({
type: "POST",
url: "char_info2.php",
data: { name: merk },
dataType: "html",
success: function(data) {
callback(data);
}
});
}
get_char_val('x', function(px) { ... });
get_char_val('y', function(py) { ... });
Обратите внимание, что два обратных вызова будут выполняться в непредсказуемом порядке.
Вам следует изменить свой дизайн, чтобы получить все двадцать значений в одном запросе AJAX.
Например, вы можете взять список значений через запятую и вернуть объект JSON, например { x: "...", y: "..." }
.