2010-07-30 2 views
1

Я убежден, что это было задано раньше и нашли немало ресурсов по этой теме, но я все еще очень смущен и не уверен, как действовать дальше.Потеряно с .net и jQuery

У меня есть текстовая область, данные которой мне нужно отправить на сервер, и мне нужно записать результат, который является строкой. Вот моя попытка:

$(document).ready(function() { 

    $('#output-box').hide(); 

    $('#form1').submit(function() { 
     var input = $('#txtinput').val() 
     $.post('Default.aspx', { func: "ParseData" }, function (data) { 
      $('#output-box').load(data).fadeIn(); 
     }); 
    }); 
}); 

Как ужасно я не знаком?

ответ

2

Закрыть, но попробуйте это:

$(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; 
    }); 
}); 
+0

+1 - хорошая точка re 'return false'. это может привести к тому, что «приятель» будет безумным, если не будет реализован !! –

+0

Благодарим за ответ, но я думаю, я не сделал свой вопрос достаточно ясным. Когда я вставляю func: «ParseData», это мои данные формы будут отправлены в функцию? Кроме того, я схватил содержимое текстового поля, но я забыл что-то сделать с ними - это что-то вроде func: «ParseData (input)» подходит? – Radu

+0

@Radu - то, как вы это делаете сейчас, 'func' будет передаваться как параметр запроса с' parseData' в качестве значения. Если parseData - это функция javascript, вы должны вызвать ее и передать результат на сервер в качестве соответствующего параметра. Я обновлю пример. – tvanfosson

Смежные вопросы