从javascript调用C#方法时遇到了问题,这是我的代码:
HTML :
function add() {
var number1 = $('#input1').val();
var number2 = $('#input2').val();
$.ajax({
type: "POST",
url: 'Panjers/AddNumbers',
data: JSON.stringify({
number1: number1,
number2: number2
}),
contentType: "application/json",
success: function(result) {
alert(result)
},
error: function() {
alert('Error');
}
})
}
<html>
<h2>View</h2>
<body>
<script type="text/javascript" src="../../Scripts/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../Scripts/display.js"></script>
<form name="form2">
<input type="text" name="input1" value="" />
<input type="text" name="input2" value="" />
<input type="button" name="bouton" value="Additionner" onclick="afficher(form2)" />
<input type="text" name="output" value="" />
<input type="button" name="bouton3" value="Affiche" onclick="add(form2)" />
</form>
</body>
</html>
[HttpPost]
public ActionResult AddNumbers(int number1,int number2)
{
int result = number1 + number2;
return Json(result,JsonRequestBehavior.AllowGet);
}
发布于 2018-08-16 10:54:04
应该提到执行此代码时引发的错误,可以使用Postman检查API是否正确调用并返回响应,当你从stringify一个带有值的对象获取时inputs,会将返回的值保持在引号(“)中,从而使其类型为string,可以通过在控制台中输出即可确认这一点,即
var number1 = $('#input1').val();
var number2 = $('#input2').val();
console.log (JSON.stringify({number1: number1, number2: number2 });
为了使服务器端功能工作,从改变参数类型int,以string这样的:
[HttpPost]
public ActionResult AddNumbers(string number1,string number2)
{
int result = int.parse(number1) + int.parse(number2);
return Json(result,JsonRequestBehavior.AllowGet);
}
https://stackoverflow.com/questions/-100002203
复制相似问题