我通过以下JavaScript AJAX函数获取内部html: 以下代码不起作用...... 我也试过ajax但没有成功。
jQuery(AJAX代码)
$('#Button1').click(function () {
var HTML = document.getElementById("selected-column-1").innerHTML;
alert(HTML);
$.ajax({
type: "post",
url: "Default.aspx/save_rec",
data: {"HTML":HTML},
dataType: "json",
success: function (result) {
//alert('sucess' + result.d);
}
});
});
但这些方法都没有达到我的方法。
C#
[WebMethod]
public static string save_rec(string HTML)
{
return "";
}
但这种方法没有达到我的C#方法
控制台错误
c# message invalid object passed in member name expected
答案 0 :(得分:2)
using System.Web.Services;
[WebMethod ]
public static void GetTableColumn(string dataa)
{
//your code
}
像这样使用
答案 1 :(得分:0)
创建一个方法,该方法将在javascript中调用,以便将回发发送到后面的代码:
function testMe(params) {
var btnID= '<%=MyButton.ClientID %>';
__doPostBack(btnID, params);
}
<强>参考:强>
How to call Postback from Javascript
_doPostBack function in javascript - asp.net postback mechanism
Generating Client-Side Script for Postback
如果您不想生成回发,那么您可以在后面的代码上创建Web方法,您可以直接从java脚本代码中调用它们:
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
[WebMethod]
public static string Name()
{
string Name = "Hello Stack";
return Name;
}
}
Javascript调用:
<script type='text/javascript'>
function GetName() {
PageMethods.Name(Success, Failure);
}
function Success(result) {
alert(result);
}
function Failure(error) {
alert(error);
}
</script>
参考以下内容:
How to call Server Side function from Client Side Code using PageMethods in ASP.NET AJAX
Calling Server Side Function From JavaScript in ASP.Net
Call ASP.Net Page Method using jQuery AJAX Example
Calling an ASP.NET C# Method (Web Method) Using JavaScript
答案 2 :(得分:0)
在ajax调用方法中进行更改后解决了
$('#Button1').click(function () {
var HTML = document.getElementById("selected-column-1").innerHTML;
Senddata = { "HTML": HTML};
$.ajax({
type: "post",
url: "Default.aspx/save_rec",
data: JSON.stringify(Senddata),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
//alert('sucess' + result.d);
}
});
});