1

我正在使用的一个页面中有一张表格,但没有表格。有没有办法在不创建表单的情况下将某些值保留到该 html。我不会以任何特定方式从该页面提交。

<!DOCTYPE html>
<html>
<head>
    <title>Show All Encounters</title>
</head>
<body>
<div class="content-wrapper clear-fix float-left"  style="height: 1px; padding: 10px;" id="list1">
    @{        
        Html.Hidden("popId", TempData["POPULATIONID"], new { id = "hidPopID" });
        Html.Hidden("popId", TempData["POPNAME"], new { id = "hidpnID" });
        Html.Hidden("popId", TempData["ROWNUM"], new { id = "hidrownumID" });
    }
 <table border="2" id="frTable" class="scroll"></table>  
 <div id='pager'></div>
 </div>
</body>
</html>
<script>
    function loadDialog(tag, event, target) {
        //debugger;
        .load($url)
      .dialog({
      ...
      , close: function (event, ui) {
            debugger;
            //if($url.contains)        
            var popId = $('#hidPopID').val();
            var rows = $('#hidrownumID').val();
            location.reload(true);
      }
        });

        $dialog.dialog('open');
    };
    </script>

关闭事件在 jquery 模态对话框调用 btw 内,因此语法在技术上是正确的

4

1 回答 1

2

您可以将值保留在 DOM 中的任何位置,但如果要将它们发送到服务器,您有几个选择:

  • 带有隐藏字段的表单(你说你不想要这个)
  • 将从 DOM 中获取值的 AJAX 请求
  • 使用查询字符串中的值锚定

或者只是将值保存在服务器上。我猜你正在使用一些可以使用的数据存储。


更新:

现在您已经展示了您的代码,很清楚为什么它不工作了。您没有任何隐藏字段(在浏览器中浏览 HTML 源代码以查看它们是否丢失)。您刚刚在服务器上调用了 Html.Hidden 助手,但您从未将结果输出到 HTML

现在正确添加隐藏字段:

@Html.Hidden("popId", TempData["POPULATIONID"], new { id = "hidPopID" })
@Html.Hidden("popId", TempData["POPNAME"], new { id = "hidpnID" })
@Html.Hidden("popId", TempData["ROWNUM"], new { id = "hidrownumID" })
于 2013-03-11T15:22:34.980 回答