我试图使用jQuery来点击某个按钮后触发Ajax调用.我已经阅读了几个可能遇到的语法和问题的例子,但未能找到适合我的工作的解决方案.这是代码.
控制器方法:(HomeController.cs)
[HttpPost]
public JsonResult ChangeCompany(string companyCode)
{
return Json(new { result = companyCode }, JsonRequestBehavior.AllowGet);
}
Run Code Online (Sandbox Code Playgroud)
jQuery代码:
function changeCompany(company) {
$.ajax({
url: '@Url.Action("ChangeCompany", "Home")',
type: 'POST',
data: JSON.stringify({ companyCode: company }),
success: function (data) {
alert("Company: " + data);
},
error: function (req, status, error) {
alert("R: " + req + " S: " + status + " E: " + error);
}
});
}
Run Code Online (Sandbox Code Playgroud)
最后,我正在调用此函数:
$('.companyButton').click(function () {
compCode = $(this).text();
debug("Click event --> " + $(this).text());
changeCompany(compCode); …Run Code Online (Sandbox Code Playgroud) 所以我最近一直在玩C,并且一直试图理解通过值/引用传递的复杂性以及在函数内操作传入变量的能力.然而,我遇到了以下问题:
void modifyCharArray(char *input)
{
//change input[0] to 'D'
input[0] = 'D';
}
int main()
{
char *test = "Bad";
modifyCharArray(test);
printf("Bad --> %s\n", test);
}
Run Code Online (Sandbox Code Playgroud)
所以想法只是修改函数内的char数组,然后在修改完成后打印出所有数组.但是,这会失败,因为我所做的只是修改input传入的值,而不是实际的内存地址.
简而言之,有没有什么方法可以让我char *input进入一个函数并修改它的原始内存地址而不使用像memcpystring.h 这样的东西?