我有一個導航欄,它使用JQuery在註冊過程的4個階段之間移動。發佈表單並重定向到操作ASP.NET MVC
但是我需要確保一切正在JS禁用。
所以我有這4個鏈接圖像在頁面的底部,我需要這樣如果一個被點擊它發佈到當前的行動,所以我可以保存所有的表單數據,然後重定向到下一個階段。
重定向很容易,因爲我只是在路由或表單中傳遞一個參數,但我不知道如何使用操作鏈接發佈該方法。
我可以把4個不同類別的提交按鈕用於圖像背景等,但這種感覺不對。
任何想法?
我有一個導航欄,它使用JQuery在註冊過程的4個階段之間移動。發佈表單並重定向到操作ASP.NET MVC
但是我需要確保一切正在JS禁用。
所以我有這4個鏈接圖像在頁面的底部,我需要這樣如果一個被點擊它發佈到當前的行動,所以我可以保存所有的表單數據,然後重定向到下一個階段。
重定向很容易,因爲我只是在路由或表單中傳遞一個參數,但我不知道如何使用操作鏈接發佈該方法。
我可以把4個不同類別的提交按鈕用於圖像背景等,但這種感覺不對。
任何想法?
你可以有多個提交按鈕你形式:
<input type="submit" name="step1" value="Step 1"/>
<input type="submit" name="step2" value="Step 2"/>
<input type="submit" name="step3" value="Step 3"/>
,並在你的行動:
public ActionResult Action(FormCollection form)
{
if (!string.IsNullOrEmpty(form["step1"]))
{
// Step 1 button was clicked
}
else if (!string.IsNullOrEmpty(form["step2"]))
{
// Step 2 button was clicked
}
else if (!string.IsNullOrEmpty(form["step3"]))
{
// Step 3 button was clicked
}
...
}
沒有Javascript,一個簡單的鏈接不能通過POST提交。你必須使用提交按鈕來完成它。幸運的是,HTML提供了一個簡單的方法來做到圖像提交按鈕:
<input type="image" src="http://url/to/image" alt="Step 1" id="btnStep1" />
您可以隨時添加的jQuery處理的Javascript的能力:
$('#btnStep1').click(function(){...});
您可以使用我在the net上找到的屬性,該屬性處理同一表單上的多個按鈕。這將決定哪個動作在控制器上執行。因此,您可以在控制器上執行4個操作,並根據哪個按鈕被點擊而執行正確的操作,而不管它被調用的位置。
這麼小的例子;標記......
<input type="submit" name="action" value="step1"/>
<input type="submit" name="action" value="step2"/>
<input type="submit" name="action" value="step3"/>
<input type="submit" name="action" value="step4"/>
控制器
則...
[HttpPost]
[MultiButton(MatchFormKey = "action", MatchFormValue = "step1")]
public ActionResult Step1(/* parameters */) { ... }
[HttpPost]
[MultiButton(MatchFormKey = "action", MatchFormValue = "step2")]
public ActionResult Step2(/* parameters */) { ... }
[HttpPost]
[MultiButton(MatchFormKey = "action", MatchFormValue = "step3")]
public ActionResult Step3(/* parameters */) { ... }
[HttpPost]
[MultiButton(MatchFormKey = "action", MatchFormValue = "step4")]
public ActionResult Step4(/* parameters */) { ... }
然後,您可以在註冊過程中(在任何步驟之間單擊大概一旦驗證完成後,你已經通過了各第一)相對容易。
希望這可以幫助別人。我只是提出了問題發佈日期,但認爲我會發布這個無論如何:-)
謝謝你看起來像我將有一個4提交按鈕的形式。 雖然我怎麼知道按鈕被點擊了? – ddd 2009-07-15 22:03:09