按钮点击调用MVC控制器和操作方法

时间:2018-03-15 10:24:24

标签: javascript c# asp.net-mvc

我有一个关于在按钮点击时调用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 但那里没有找到我的问题的答案。

2 个答案:

答案 0 :(得分:1)

我知道答案已定,但只是为了清除问题

在javascript中我们通常使用像

这样的东西
document.getElementsByName("fooName")[0].value; 

什么[0] - &GT;建议您选择具有该特定名称的第一个元素,表示该页面可能包含或不包含更多具有相同名称的元素

那个me​​aans

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()