2015-04-06 19 views
0

在我的asp.net mvc表單中,我有2個按鈕,一個用於保存將從sharepoint的列表中保存的數據,第二個按鈕也是這樣另外它應用了一些CSS顏色。然而如何在同一個asp.net mvc表單上使用2個按鈕

我懷疑如何使用同一表格上2個動作(同一控制器) 這是我的看法自定義控制器上

@{ 
    Layout = "~/Views/Shared/_LayoutPage2.cshtml"; 
} 
@using (Html.BeginForm("Index", "Movies", FormMethod.Post)) 
{ 
<div class="row"> 
    <div class="col-md-8"> 
     <div class="col-xs-6 col-sm-3" id="stylesheet">Hojas de estilos</div> 
     <div class="col-xs-6 col-sm-3"> 
      @Html.DropDownList("cssFiles", (IEnumerable<SelectListItem>)ViewBag.cssFiles, "Crear Nuevo", new { @class = "form-control", @id = "selCssFile" }) 
      <span> 
       <input type="text" class="form-control" id="txtFileName" style="display:none;" placeholder="Nombre del archivo"> 
      </span> 
     </div> 
    </div> 
    </div> 
<div class="row"> 
    <div class="col-md-8"> 
     Color base, links, botones, borde encabezado y pie 
    </div> 
    <div class="col-md-4"> 
     <div id="colorSelector" class="colorSelector"><div style="background-color: #0000ff"></div></div> 
    </div> 
</div> 
<div class="row"> 
    <div class="col-md-8"> 
     Fondo de la pagina, fondo de los cuadros 
    </div> 
    <div class="col-md-4"> 
     <div id="colorSelector2" class="colorSelector"><div style="background-color: #0000ff"></div></div> 
    </div> 
</div> 
<div class="row"> 
    <div class="col-md-8"> 
     Navegación 
    </div> 
    <div class="col-md-4"> 
     <div id="colorSelector3" class="colorSelector"><div style="background-color: #0000ff"></div></div> 
    </div> 
</div> 
<div class="row"> 
    <div class="col-md-8"> 
     Navegación (Item seleccionado) 
    </div> 
    <div class="col-md-4"> 
     <div id="colorSelector4" class="colorSelector"><div style="background-color: #0000ff"></div></div> 
    </div> 
</div> 
<div class="row"> 
    <div class="col-md-8"> 
     Pie de página 
    </div> 
    <div class="col-md-4"> 
     <div id="colorSelector5" class="colorSelector"><div style="background-color: #0000ff"></div></div> 
    </div> 
</div> 
<div class="row" id="buttons"> 
    <div class="col-md-8"> 
    </div> 
    <div class="col-md-4"> 
     <button type="button" class="btn btn-success">Guardar</button> 
     <button type="button" class="btn btn-primary">Guardar y aplicar</button> 
    </div> 
</div> 
} 

我的索引行動至今

public class CustomizeController : Controller 
    { 
     // GET: Customize 
     public ActionResult Index() 
     { 
      User spUser = null; 

      var spContext = SharePointContextProvider.Current.GetSharePointContext(HttpContext); 

      using (var cc = spContext.CreateUserClientContextForSPHost()) 
      { 
       int aprovisionado = (int)cc.Web.GetPropertyBagValueInt("Vinculosc.PlantillasIntranet.Aprovisionado", 0); 
       if (aprovisionado == 0) 
       { 
        string libraryName = "ConfiguraciónColores"; 
        Dictionary<string, string> fields = new Dictionary<string, string>(); 
        fields.Add("Color1", "Text"); 
        fields.Add("Color2", "Text"); 
        fields.Add("Color3", "Text"); 
        fields.Add("Color4", "Text"); 
        fields.Add("Color5", "Text"); 
        //ProvisionTemplate(cc); 
        CreateLibrary(cc, libraryName); 
        AddFields(cc, libraryName, fields); 
       } 
      } 
      #region comments 
      /*Uri hostWeb = new Uri(Request.QueryString["SPHostURL"]); 

      using (var clientContext = TokenHelper.GetS2SClientContextWithWindowsIdentity(hostWeb, Request.LogonUserIdentity)) 
      { 
       var web = clientContext.Web; 

       clientContext.Load(web, w => w.Lists.Include(l => l.Title).Where(l => !l.hidden)); 
       clientContext.ExecuteQuery(); 

       return View(web.Lists); 
      }*/ 
      #endregion 

      return View(); 
     } 
+0

什麼是你的問題的價值? –

+0

在c#代碼中,我怎麼知道哪個按鈕被按下在表格中 –

+0

你所顯示的只是一個GET方法,而不是POST方法。你甚至沒有可以回發的表單(除非你使用ajax發佈信息,但是你沒有表明這個信息),並且你沒有給出任何控件的'name'屬性,所以無論如何都沒有任何東西可以回傳。 –

回答

1

你可以把同一個名字在視圖中具有不同的價值

<button type="submit" name="Guardar" value="guardar" class="btn btn-success">Guardar</button> 
<button type="submit" name="Guardar" value="aplicar" class="btn btn-primary">Guardar y aplicar</button> 

和Controller可以檢查按鈕

if (Request["Guardar"].ToString() == "guardar") 
{ 
    //Your code for the first button 
} 
else 
{ 
    //Your code for the second button 
} 
1

您的按鈕類型應該是「提交」,並且您可以給他們一個名字...同名,可以在模型中重複使用,或通過Request.Form [「GiveAName」]

Your co ntroller應該有一個

[HttpPost] 
public ActionResult Index() 
{ 
... Your code to retrieve form values 
} 

反正這是很糟糕的編碼......你應該工作模式注入的觀點,同樣的模型可以檢索回來,所以你不必擔心檢索表單值。 :=)

相關問題