c# - 使用 javascript 调用重定向到 ASP.NET MVC 应用程序的操作

标签 c# javascript jquery asp.net asp.net-mvc

我有一个 ASP.NET 应用程序,我必须在其中自定义表单的提交按钮中的单击操作:

脚本

<script>
  $(function(){
    function result(arr, identificateur,Pages) {
   var f1 = $('input[name="reception' + arr + '"]').val();
   var f2 = $('input[name="client' + arr + '"]').val();
   var f3 = $('input[name="cloture' + arr + '"]').val();
   var f4 = $('input[name="tag' + arr + '"]').val();
   location = "@Url.Content("/Pages/Index")?identificateur=" + identificateur + "&Pages=" + Pages + "&_reception=" + f1 + "&_cloture=" + f3 + "&_client=" + f2 + "&_tag=" + f4;
    }});
  </script>

然后,形式:

 <input type="submit" onclick="result(@i.ToString(),@Model[1][i].Id ,"1");" value="Enregistrer"/>

当我点击提交按钮时,没有任何反应,并且我没有重定向到操作 Index

造成这个问题的原因是什么?我该如何修复它?

编辑

<input type="submit" id="Enregistrer" value="Enregistrer" data-arr="@i.ToString()" data-identificateur="@Model[1][i].Id"  />





<script>
    $(function () {
            $('#Enregistrer').click(function () {
            var self = $(this); // This is the submit button
            var identificateur = self.data('identificateur');
            var arr = self.data('arr');
            var f1 = $('input[name="reception' + arr + '"]').val();
            var f2 = $('input[name="client' + arr + '"]').val();
            var f3 = $('input[name="cloture' + arr + '"]').val();
            var f4 = $('input[name="tag' + arr + '"]').val();
             document.location.href = "@Url.Content("/Pages/Index")?identificateur=" + identificateur + "&Pages=1&_reception=" + f1 + "&_cloture=" + f3 + "&_client=" + f2 + "&_tag=" + f4;
        });
    });
  </script>

问题:

  1. 重定向失败
  2. 只有在第一个 tr 中我才能到达 js 函数

最佳答案

传递带有引号'字符串参数,例如'someVal',否则您将收到未定义错误

更改下面的行

 onclick="result(@i.ToString(),@Model[1][i].Id ,"1");"

onclick="result('@i.ToString()','@Model[1][i].Id' ,"1");"

将调用您的 JavaScript 函数,否则所有呈现的字符串将被视为变量,如下所示,您将收到 someval,someId undefined 错误

onclick="result(someval,someId ,"1");"

还可以使用location.href进行导航

关于c# - 使用 javascript 调用重定向到 ASP.NET MVC 应用程序的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19244246/

相关文章:

javascript - 使用 jQuery 获取要显示的复选框和文本区域的文本

asp.net - RegisterStartupScript 和执行顺序

javascript - 来自添加类的 jQuery 调用函数调用另一个函数

javascript - 如果值= ="string",如何替换 ng-repeat 中的值,否则不显示

javascript - 如何将 javascript FileReader 对象附加到 html input[type ="file"] 元素

javascript - 带有angularJS javascript的动态背景图像

c# - 如何将文件重命名为在 C# 中万无一失的唯一名称?

c# - 如何在运行时提示用户输入——编码的UI自动化测试

c# - 从华氏度转换为摄氏度

c# - 在 C# 中使用 DirectoryInfo/FileInfo.MoveTo() 将文件或文件夹重命名为小写