我正在使用ASP.NET MVC 3
和Yahoo API version 3
。我試圖讓我的YUI3 button
重新定向到另一個頁面時,我點擊它,這個按鈕是我的取消按鈕。取消按鈕是一個普通的按鈕類型,但它被視爲一個提交按鈕。它不會重定向到正確的頁面,而是像一個提交按鈕,它啓動我的頁面驗證,比如提交按鈕會做什麼。YUI3按鈕點擊事件的行爲類似於提交類型而不是按鈕類型
我認爲這可能與我的HTML,但我沒有驗證它。它驗證了100%正確。於是我將整個頁面剝離到最低限度,但取消按鈕仍然像提交按鈕一樣工作。這裏是我的HTML標記:
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<title>Create2</title>
</head>
<body class="yui3-skin-sam">
<h1>Test submit</h1>
@using (Html.BeginForm())
{
<button id="SaveButton" type="submit">Save</button>
<button id="CancelButton" type="button">Cancel</button>
}
<script src="http://yui.yahooapis.com/3.6.0pr4/build/yui/yui-min.js"></script>
<script>
YUI().use('button', function (Y) {
var saveButton = new Y.Button({
srcNode: '#SaveButton'
}).render();
var cancelButton = new Y.Button({
srcNode: '#CancelButton',
on: {
'click': function (e) {
Y.config.win.location = '/Administration/Department/List';
}
}
}).render();
});
</script>
</body>
</html>
我不知道我在做什麼錯在這裏?這可能是他們的API中的錯誤?我正在測試IE8和最新版本的FireFox。
UPDATE:
我忘了提,如果這些按鈕是不是形式標記之間,則重定向工作正常。如果我把它們放在窗體標籤中,那麼重定向不起作用。
感謝您的詳細解答。你爲什麼認爲這個按鈕是一個提交按鈕? – 2012-08-06 16:10:58
因爲表單內按鈕的默認類型是「提交」。請參閱標準:http://www.w3.org/TR/html401/interact/forms.html#adef-type-BUTTON – juandopazo 2012-08-07 01:10:51
默認或不是默認的,他們可以保持按鈕的聲明。 – 2012-08-07 06:15:41