好吧Javascript確認提供確定/取消按鈕,但我想創建一個確認與是和否在Javascript中,任何人都可以幫忙嗎?製作Javascript是/否確認框?
2
A
回答
3
確認框中的按鈕不能被Javascript更改。
我建議您以內聯彈出窗口的形式滾動自己的內容。只需在頁面中央創建一個與position:absolute;
的div,然後顯示/隱藏它。
編輯:
下面的代碼將列出你需要使用Javascript香草做什麼。你可能會想花更多的時間來設計它,但關鍵點是:
position:absolute;
這樣彈出窗口就會出現在頁面的中心。 display:none;
這樣,當頁面加載時,彈出窗口將被隱藏。 該鏈接有一個href
,因此即使沒有Javascript,它仍然可以正常工作。 第一個鏈接的onClick
屬性返回false;這會阻止鏈接重定向。
您可以更改彈出窗口中的兩個onClick
以完成您想要的任何操作。
<style type="text/css">
div#popup
{
position:absolute;
display:none;
top:200px;
left:50%;
width:500px;
margin-left:-250px;
border:1px solid blue;
padding:20px;
background-color:white;
}
</style>
<a
href="http://example.com/"
onclick="document.getElementById('popup').style.display = 'block'; return false;"
>Go to example.com</a>
<div id="popup">
<p>Are you sure you want to go to example.com?</p>
<p>
<a onclick="document.location='http://example.com/'; return false;">
Yes
</a>
<a onclick="document.getElementById('popup').style.display = 'none'; return false;">
No
</a>
</p>
</div>
爲了得到一個更專業的結果,我會建議更多地瞭解JavaScript和jQuery和調查一些由其他海報建議的選項。
0
您不能影響通常使用的window.alert
,window.confirm
和window.prompt()
原生彈出窗口。
但是,您可以使用其他現有的庫,例如ExtJS的MessageBox。
MessageBox是ExtCore的一部分,所以你甚至不需要整個庫,但只需核心功能。
下面是一個簡單的例子,使用Google AJAX庫API加載器。
部分的<head>
my.html的範圍內:
<script type="text/javascript" src="http://www.google.com/jsapi?key=MY_API_KEY_GOES_HERE"></script>
<script type="text/javascript" src="my.js"></script>
在my.js:
google.load("dojo", "1.5", {
uncompressed: true
});
function OnLoad() {
function processResult() {
/* do something here */
}
Ext.Msg.show({
title:'Save Changes?',
msg: 'You are closing a tab that has unsaved changes. Would you like to save your changes?',
buttons: Ext.Msg.YESNOCANCEL,
fn: processResult,
icon: Ext.MessageBox.QUESTION
});
}
google.setOnLoadCallback(OnLoad);
欲瞭解更多信息,你可以參考我的回答另一個問題上how to use the Google CDN。
1
基本要點有:
- 創建一個透明(或半透明)的iframe覆蓋瀏覽器窗口,它做了幾件事情對你:
- 實惠點擊您的確認框 外
- 防止操作系統繪製的控件(如選擇框)出現在確認框的頂部(否則它們會在IE上至少可能出現其他情況)
- 並讓您(可選)遮蔽其餘部分頁面突出顯示您的確認框。給iframe一個
z-index
(100,比方說,除非你在頁面上有更高的z-index
的其他元素)。
- 創建一個包含你的是/否問題,按鈕的股利,將其附加到你的主頁的DOM,你想要它,並把它給DIV比IFRAME的
z-index
更大。相信與否,這意味着該頁面在iframe後面,但div在它的前面。正是你想要的。 - 處理單擊按鈕將所有東西撕下(並獲得答案)。
- 請記住,這將而不是內嵌您的JavaScript邏輯。您可以使用按鈕上的回調代替。
真的是那麼容易(或那麼複雜)。 :-)
話雖如此,這個輪子已被髮明。尋找「燈箱」或類似的組件。例如,jQuery UI有一個名爲Dialog
的例子,但只是將其添加到您未使用jQuery UI進行其他任何操作的頁面可能有點沉重。
相關問題
- 1. Javascript確認框是或否按鈕
- 2. 如何製作確認框?
- 3. 製作一個確認框
- 4. Javascript:確認框
- 5. 確認框javascript
- 6. javascript確認框
- 7. 的Javascript確認框
- 8. Javascript確認框複選框
- 9. 的Javascript確認框的工作錯
- 10. JavaScript確認框不在php中工作
- 11. Javascript確認框不起作用
- 12. 服務器端是否使用JavaScript確認消息框
- 13. Fancybox的Javascript/jquery回調是否確認
- 14. 在javascript中製作自定義確認框
- 15. Javascript確認動作
- 16. 裏面的javascript確認框
- 17. javascript確認框問題
- 18. Javascript確認對話框 - ASP.NET
- 19. javascript確認對話框
- 20. Javascript Chrome確認框延遲
- 21. javascript確認框if語句
- 22. Javascript確認框與PHP
- 23. 定製確認對話框
- 24. Javascript,提示框和確認框
- 25. 確認框不起作用
- 26. javascript如何確認工作?
- 27. JavaScript確認不起作用?
- 28. 在確認對話框中顯示是/否而非確定
- 29. 確認框只是按鈕
- 30. 確認ftp是否完整?
你能舉個簡單的例子嗎?我是JavaScript的新手請問它會很好嗎? – Seeker 2010-10-18 10:15:45
@BuhBuh很好的例子。只是一個小注 - div的id需要更改爲彈出以匹配css – 2011-11-21 08:47:44
@esther h非常感謝,完成了。總會有一些小錯誤! – 2011-11-21 12:41:12