Закрыть, но попробуйте это:
$(function () { // I like the shorthand way
$('#output-box').hide();
$('#form1').submit(function () {
var input = $('#txtinput').val();
$.post('Default.aspx', { func: "ParseData" }, function (data) {
$('#output-box').val(data).fadeIn(); // set the value to the returned data
});
return false; // block the normal submit action
});
});
По сути, вы используете функцию val()
для изменения значения текстовой области, а не для «загрузки» данных в нее.Кроме того, вам нужно вернуть false из обработчика событий, или вы оба отправите AJAX-запрос и выполните обычное действие после публикации в форме.
Редактировать :основываясь на вашем комментарии.Если вам нужно сначала позвонить parseData
, тогда может подойти что-то подобное.
$(function () {
$('#output-box').hide();
$('#form1').submit(function () {
var input = parseData( $('#txtinput').val() );
$.post('Default.aspx', { txtinput: input }, function (data) {
$('#output-box').val(data).fadeIn();
});
return false;
});
});