簡體   English   中英

無法將數據從 aspx 文件發送到使用 $.ajax({ type: "POST", using VS2017 C#

[英]Cannot send data from aspx file to code behind using $.ajax({ type: "POST", using VS2017 C#

我正在使用網絡表單從表單中收集數據,然后將數據發送到代碼隱藏以發送到 API。 我使用一個按鈕調用一個 JavaScript 方法,該方法整理數據,然后發送到我的 aspx.cs 文件以發送到 API。 按鈕的 Html 代碼是

<button class="search btn" ID="btnSearch" onclick="searchApi(); return false;"><i class="fas fa-search"></i>Search</button>

這將運行 searchAPI() 函數,該函數工作並創建一個名為 SearchData 的連接字符串。 Javascript 代碼如下所示

var searchString = JsonData;
var trimsearchString = searchString.replace(/,/g, '');

$.ajax({
   type: "POST",
   url: 'Default.aspx/GetApi',
      data: searchString,
      contentType: "application/json; charset=utf-8",
      dataType: "json",
      success: function (data) {
          alert('success');
                },
                error: function (errordata) {
                    console.log(errordata);
                    alert(errordata);
                }
    });

我的 Default.aspx.cs 文件中的 GetAPI 方法從未被調用。 方法代碼是

[System.Web.Services.WebMethod]
public static void GetApi(string searchData)    
{...

成功:函數(數據)返回成功,但從未調用方法背后的代碼,有人可以告訴我我缺少什么。

修復ajax數據,好像找不到帶這個參數的方法

$.ajax({
   type: "POST",
   url: 'Default.aspx/GetApi',

      data: { searchData: trimsearchString},
      //or if it is still problem, you can even try
       data: JSON.stringify( { searchData: trimsearchString}),

      contentType: "application/json; charset=utf-8",
      dataType: "json",
      success: function (data) {
          alert(data);
                },
                error: function (errordata) {
                    console.log(errordata);
                    alert(errordata);
                }
    });

你的 webmethod 應該返回一些東西

[WebMethod]
public static string GetApi(string searchData)    
{
   return searchData
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM