2014-02-19 63 views
0

這是我迄今嘗試過的;這些是它返回的值:無法發佈textarea jquery

$('input[name=message]').toString() 
"[object Object]" 

$('input[name=message]').val() 
undefined 

$('input[name=message]').toString() 
"[object Object]" 

$('input[name=message]').html() 
null 

任何人都可以建議我怎麼可以在json中發佈文本?

這是當前的代碼:

$('form input[type=image]').click(function() { 
     var $data =  'name=' + $('input[name=name]').val() + '&' + 
         'email=' + $('input[name=email]').val() + '&' + 
         'country=' + $('input[name=country]').val() + '&' + 
         'contact=' + $('input[name=contact]').val() + '&' + 
         'message=' + $('input[name=message]').val() + '&' + 
         'service=' + $('input[name=service]:selected').val() + '&' + 
         'csrf=' + $('input[name=csrf]').val(); 

     $.post('http://www.site.com/system/sendemail.php', 
       $data, 
       function($data, $textStatus) { 
        if ($data.success) { 
         $('input[name=name]').val(); 
         $('input[name=email]').val(); 
         $('input[name=country]').val(); 
         $('input[name=contact]').val(); 
         $('input[name=message]').val(); 
         $('input[name=service]').attr('selected', ''); 
         $('input[name=csrf]').val($data.newCSRF); 
        } 
        $.prompt($data.result); 

       }, 
       'json'); 
     return false; 
    }); 
+2

爲什麼你不能只使用'$( '#inputid')VAL()'? –

+0

請顯示你的表格 – nikis

+0

提交這樣的表格可能會隨着表單的增長而變壞,請看jquery [serialize](http://api.jquery.com/serialize/) – Wahtever

回答

3

如果是文本區域,使用textarea代替input

相反的:

$('input[name=message]').val() 

試試這個:

$('textarea[name=message]').val() 
+0

完美的,它很棒!謝謝。 –

+0

尼斯魁梧...... :) –

2

您可以使用錯誤的選擇,我想你必須改變輸入到文本區域:

$('textarea[name=message]') 
+0

這給了我:message:[對象對象] - 我會張貼我的表格 –