1
我正在創建一個基本的ASP.NET MVC應用程序。我想用jQuery來讓兩個按鈕以不同的方式提交表單。我得到的錯誤是「Object expected」。獲取jquery:'Object Expected'錯誤
下面是按鈕:
<input type="button" id="StartTask" value="Start" onclick="StartTask()" />
<input type="button" id="StopTask" value="Stop" onclick="StopTask()" />
這裏是我的腳本標籤:
<script src="~/Scripts/jquery-1.3.2.js" type="text/javascript" />
<script src="~/Scripts/jquery-1.3.2-vsdoc.js" type="text/javascript" />
<script type="text/javascript">
$("#StartTask").click(function() {
$.post("/Home/StartTask");
});
function StopTask() {
$.post("/Home/StopTask");
}
</script>
的功能是不同的,因爲我嘗試不同的東西。
隨着jquery包括,兩個按鈕給我「對象預期」。沒有jquery包含,$(「#StartTask」)上的開始按鈕炸彈和$ .post()上的第二個炸彈。
編輯:添加控制器的方法
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult StartTask()
{
return View();
}
,小白一步我缺少什麼基本?
獎勵:有人可以指點我的教程,可以幫助我解決這個問題嗎?
關鍵是我的
可能當$(「#StartTask」)被調用時,您的尚未被添加到DOM樹中。
一種肯定的方式是:
來源
2009-10-13 15:20:37 mauris
這不是要修復StopTask轟炸,但是 – Evildonald 2009-10-13 16:00:10
@Mauris,謝謝。試過了。沒有工作。你還有什麼? – Rap 2009-10-13 16:24:15
更新後。 @bpayne - 出了什麼問題? – mauris 2009-10-13 16:32:50
你正在做的按鈕點擊同一件事兩種不同的方式。讓他們一致開始。你的開始很興奮,因爲這個功能不存在..而停止可能由於幾個原因而爆炸。要開始..讓他們都工作相同,由任一。
腳本這個(直JS功能)更改:
OR
(jQuery的註冊方式)
您的按鈕來此:
和你的代碼:
PS告訴我你要去哪一個,如果你願意,我可以爲你進一步解釋。
UPDATE:關於StopTask轟炸,您的MVC控制器方法是否有上面這個呢?
如果您使用$ .post()命令,則需要使用它。
來源
2009-10-13 15:47:37 Evildonald
是的,我們有AcceptVerbs裝飾器。感謝您的提醒。我有兩種不同的方式的原因是測試兩種方式,並顯示SO人都失敗了。只要有效,我都可以採用任何一種方法。 – Rap 2009-10-13 16:21:06
剩下的問題似乎是您的$ .post()失敗。你可以說得更詳細點嗎?如果你在你的StopTask MVC方法的第一行放置了一個斷點,那麼它會被擊中(即路徑是否解析?) – Evildonald 2009-10-13 16:47:33
不會。它沒有被擊中。它永遠不會到達那裏。 – Rap 2009-10-13 19:00:59
嘗試刪除
onclick="StartTask()"
來源
2009-10-13 16:36:27 powtac
當我刪除onclick =「StartTask()」時,按鈕點擊沒有任何反應。我在處理程序中放置了一個斷點和一個alert()。從不打。 – Rap 2009-10-13 18:01:30
我會同時刪除
他們做同樣的事情(處理事件)作爲。點擊jQuery,你不需要兩個事件處理程序,並且你已經沒有聲明的StartTask函數。
取而代之,請在JavaScript中進行事件處理。
來源
2009-10-13 16:52:19
-1杜佩建議 – Evildonald 2009-10-13 17:00:45
你剛剛-1我是否是惡毒?如果是這樣,那就起來吧,至少承認它。 – Evildonald 2009-10-13 18:12:02