簡體   English   中英

將數據從視圖發送到控制器

[英]Sending data from view to the controller

在我的視圖內部,我有兩個帶有兩個按鈕的jquery日期輸入字段,用於處理這些日期選擇。 在第一個按鈕上,我通過ajax發送數據並在某個div內顯示數據,這很完美。

在該按鈕旁邊,我還有一個按鈕,可在pdf文檔中顯示數據。 當然,我不想為此使用ajax,但我確實希望使用相同的選定日期數據(我現在想再使用兩個輸入來處理用戶選擇)。

所以我的視圖代碼片段是這樣的

<tr>
    <td>@Html.TextBox("dateFrom", null, new { @class = "date", @id = "datePickerFrom" })</td>
    <td>@Html.TextBox("dateTo", null, new { @class = "date", @id = "datePickerTo" })</td>
    <td>
        <input type="submit" value="Send" class="dateBtn" /></td>
     <td>
        <input type="submit" value="PDF" class="dateBtnPdf" />
     </td>

</tr>

而且我有處理點擊處理程序並將數據發送到控制器以進行Ajax操作的js

$(document).ready(function () {
   $(".dateBtn").click(function (event) {
      var dateFrom = $("#datePickerFrom").val();
      var dateTo = $("#datePickerTo").val();
      GetDetails(dateFrom, dateTo);
   })
function GetDetails(dateFrom, dateTo) {
    $.ajax({
..... ommited on purpose

所以我的問題是我如何將選擇的值發送到第二個不使用ajax的按鈕的控制器(我是否需要使用表格,如果要使用相同的輸入字段來獲取將發送到控制器的值?)

 $(".dateBtnPdf").click(function (event) {
   var dateFrom = $("#datePickerFrom").val();
   var dateTo = $("#datePickerTo").val();

   //send values to the controller /report/pdfDemo
 })

謝謝

對於這種情況,我看不到有什么解決方案,我建議您選擇一種接近的解決方案:

<form id="form-dates" action"/report/pdfDemo"> <!-- Here you could use @Url.Action("pdfDemo","report") -->

@Html.Hidden("dateFromPdf");
@Html.Hidden("dateToPdf");

<input type="submit" value="PDF" class="dateBtnPdf" />

</form>

然后在您的JavaScript中,更新表單的隱藏值並提交:

$(".dateBtnPdf").click(function (event) {
   $('[name="dateFromPdf"]').val( $("#datePickerFrom").val() );
   $('[name="dateToPdf"]').val( $("#datePickerTo").val() );

   $('#form-dates').submit();
   //send values to the controller /report/pdfDemo
 })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM