У меня есть простая форма на моей странице с текстовым полем и кнопкой, которая вызывает этот метод javascript
onclick="Create();"
и эта функция запускается ...
function Create() {
var txt = document.getElementById("longTxt").value;
if (txt == "Insert Name") {
alert("You must provide a name");
return;
}
var data = { Name: txt };
$.post("/Home/Create", data, null, "json");
}
Вызванное действие вставляет имя в базу данных и возвращает строку.
Метод работает, он добавляет опубликованное имя в мою базу данных, но как мне использовать эту строку, которую возвращает мой метод для отображения возвращенной строки в моем текстовом поле.
Edit:
какой мой метод должен выглядеть, как будто у меня что-то вроде
[AcceptVerbs(HttpVerbs.Post)]
public JsonResult Create(string name)
{
string hash = repo.addName(name);
return new JsonResult()
{
Data = new { data = hash }
};
}
когда я добавляю контрольные точки и проверяю его, похоже, что он работает, он добавляет имя. функция обратного вызова используется, потому что я заменил
$("#longUrl").val(json.PropertyReturned);
с предупреждением (json.PropertyReturned); чтобы увидеть, происходит ли что-нибудь, и я получаю текстовое поле, но оно говорит "undefined"
Я действительно новичок во всем этом, может быть, я просто делаю метод и возвращаюсь неправильно. Кроме того, intelisense не показывает «json.PropertyReturned» в качестве опции, когда он появляется после ввода «json».