我有一个关于在按钮点击时调用MVC控制器和操作方法的问题。我基本上想要实现的是将一些值作为参数传递给我的action方法。
这是我的按钮:
<button id="add" type="button" class="inner-button">
<span class="fa fa-stack fa-lg">
<i class="fa fa-circle fa-stack-2x img-responsive"></i>
<i class="fa fa-plus fa-stack-1x fa-inverse img-responsive"></i>
</span>
</button>
我的代码已经包含在document.ready函数
中$("#add").on("click", function () {
var var1= $("textboxName")[0].value
var var2= $("#textboxSurname")[0].value
window.location.href = ('/Web/AddInformation?var1=' + var1 + '&var2=' + var2)
});
这是我的行动方法:
public ActionResult AddInformation(string var1, string var2)
{
//code
}
重点是允许用户在HTTP Post请求中包含保存的信息之前,根据需要添加这些变量。这让我抓狂,因为我有相同的按钮(当然是不同的ID)和类似的Jquery代码正在做同样的事情并且它工作正常。但是这个按钮只是拒绝工作。这段代码是否正确?还是我错过了什么。
注意:我知道存在非常相似的问题:Here 但那里没有找到我的问题的答案。
答案 0 :(得分:1)
我知道答案已定,但只是为了清除问题
在javascript中我们通常使用像
这样的东西document.getElementsByName("fooName")[0].value;
什么[0] - &GT;建议您选择具有该特定名称的第一个元素,表示该页面可能包含或不包含更多具有相同名称的元素
那个meaans
textbox name=foo
textbox name==foo
就像
document.getElementsByName("foo")[0].value;
document.getElementsByName("foo")[1].value;
在jquery中,你现在不需要,你试图将jquery功能与javascript合并,有时可以工作,有时可能不会
使用jquery时尝试使用standerd jquery chainnig而不是venilla javascript
答案 1 :(得分:0)
使用以下代码获取文本框值
var var1 = $("textboxName").val()
var var2 = $("#textboxSurname").val()