0
所以我有一個使用C#代碼和JavaScript代碼的Web應用程序。我的JavaScript代碼根據用戶輸入生成一些信息。一旦完成,它將使用ASP按鈕保存。附加到asp按鈕是一個客戶端點擊和點擊事件。 Javascript代碼驗證代碼並確保已創建的字符串有效。如果沒有錯誤消息發送到隱藏標籤。然後C#代碼檢查該標籤,如果它是空的(如果驗證沒有問題),它將執行C#代碼。如果它裏面有一個值,那麼來自隱藏標籤的錯誤消息將使用C#代碼傳遞給可見標籤並顯示給用戶。頁面重新加載時遇到問題。 ASP.NET
但是,如果錯誤消息顯示在頁面中自動重新加載(因爲它是一個按鈕點擊事件總是發生)。並且用戶輸入從屏幕清除。
有什麼辦法可以阻止頁面重新加載時顯示錯誤信息?
CODE
的Javascript:
if (goalnum > 0 && blocknum > 0 && playernum == 1 && goalnum == blocknum) {
mapsave = JSON.stringify(map);
document.getElementById('<%=mapsave.ClientID %>').value = mapsave;
}
else {
document.getElementById('<%=lblError.ClientID %>').value = "Your map must have one and only one player, one or more blocks, one or more goals and the number of blocks must match up with the number of goals";
}
C#
protected void btnSave_Click(object sender, EventArgs e)
{
if (mapsave.Value.ToString() == "")
{
lblResult.Text = lblError.Value;
}
else
{
AddNodeToXMLFile("filepath.xml", "TileMaps");
}
}
我已經添加上面的代碼作爲編輯。正如你可以在JavaScript中看到的,我將地圖保存到名爲mapsave的標籤中,然後如果該標籤爲空,則顯示lblResult.Text。這是我想要顯示的錯誤消息,但不會重新加載頁面,因爲他們的信息將被重置。 – 2012-08-09 10:02:17
啊,我剛剛意識到如何去做......在我的ASP按鈕中,我不得不將retun元素添加到我的onclientclick中。我必須添加返回false;到if語句上。現在它可以工作。謝謝 – 2012-08-09 10:12:49
就是這樣!做得好 – 2012-08-09 10:13:39