2011-02-08 60 views
1

我想通過jQuery .ajax將多行文本框的內容傳遞到sql數據庫。使用jQuery從多行文本框傳遞值ajax

function UpdateMemogramContent() {  
$.ajax({ 
     type: "POST", 
     url: "MemogramWebServices.asmx/UpdateMemogramContent", 
     data: "{ 'mId': " + $("#LabelId").text() + ", 'content': " + $("#TextBoxContent").text() + "}", 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: Success, 
     error: Error 
    }); 
} 

我面臨的問題是多線文本框的內容拋出無效的json原始異常。縱觀在POST:

{ 'MID':314, '內容':測試

測試}

我能做些什麼,以從多文本框中的文本傳遞到一個使用.ajax的sql數據庫?

+2

您是否嘗試$( 「#TextBoxContent」)VAL()? – Mayank 2011-02-08 04:56:57

+0

嘗試使用trim()傳遞之前? – Shrinath 2011-02-08 04:57:58

+0

就像@Mayank說的,你應該使用val()而不是文本() – xandy 2011-02-08 04:58:30

回答

0

在調用發佈數據之前放置一個斷點,並查看發送給服務器的值。 也

  1. 變化

$( 「#TextBoxContent」)。文本()

$( 「#TextBoxContent」)。VAL ()

  1. 如果第1頁沒有幫助;嘗試更換

數據:「{ 'MID':

數據: 「{MID:」

0

爲什麼不使用一個實際的JavaScript結構,像這樣。然而,這會將mId和內容作爲標準後置參數而不是一張JSON。

$.ajax({ 
    type: "POST", 
    url: "MemogramWebServices.asmx/UpdateMemogramContent", 
    data: { 
     mId:  $("#LabelId").text(), 
     content: $("#TextBoxContent").text() 
    }, 
    ... 
}); 

否則,你也可以使用JSON.stringify像這樣:

var json_data = JSON.stringify({ 
    mId:  $("#LabelId").text(), 
    content: $("#TextBoxContent").text() 
}); 

$.ajax({ 
    type: "POST", 
    url: "MemogramWebServices.asmx/UpdateMemogramContent", 
    data: json_data, 
    ... 
});