2012-10-12 27 views
0

我希望有人可以提供幫助。當我在'模態'屬性設置爲'true'的情況下運行JQuery模態窗口中的表單時,我缺少一些邏輯和樣式。我正在嘗試使用http://jqueryui.com/dialog/#modal-form中的表單。Jquery Modal窗口 - Modal屬性中斷代碼

在模態窗口外部使用的相同代碼正常運行。我不知道如何解決它,並決定與你分享。

我在JSFiddle中創建了一個頁面 - http://jsfiddle.net/vladc77/GcQRg/16來顯示代碼。但是,模式窗口不能從那裏運行。因此,我在這裏上傳相同的測試 - http://www.vladcdesign.com/modalWindow

當我設置(模態:真),然後我得到以下問題。

1.在工作時間形式複選框應該啓用/禁用菜單設置時間

2「更多」複選框應顯示/隱藏的文本字段

3.I失去能力在「小時」設置窗體中設置元素之間的邊距。現在,即使使用邊距樣式,所有菜單都會相互接觸。他們只是不適用。

所有這些問題僅在我在模態窗口中運行此DIV時才存在。它在模式窗口外工作正常。我想知道是否有人可以幫忙解釋代碼有什麼問題。任何建議是高度讚賞。

+0

任何幫助?我仍然無法解決這個問題。謝謝。 – vladc77

回答

0

第一$(document).ready(function(){});和第二$(function() { });是相同,代碼將以便它們在這些塊來執行。

但是$(window).load(function(){ });有點不同,它會在稍後執行。檢查此post以查看區別。

你可以experminet一點與定義click事件到你的「開放模式窗口」按鈕,完成所有的時候觸發綁定:

$('#create-user').bind('click',function(e){ 
    // To avoid navigating by link 
    e.preventDefault(); 
    e.stopPropagation(); 
    // Do every binding/appending 
    // $('.workDayHours').each(function() { ... 
}); 
+0

謝謝你的建議。我會嘗試。但是,我發現問題來自「模式」屬性,並且不得不編輯我的帖子。我想知道你是否熟悉http://jqueryui.com/dialog/#modal-form。並瞭解圍繞這個問題的工作。再次感謝你。 – vladc77

+0

我試過你的方法,但它不會改變任何東西。不管怎樣,謝謝你。 – vladc77

1

望着小提琴和例子都你貼在您的網站,您將獲得以下錯誤:

Uncaught ReferenceError: closedHours is not defined

的問題似乎是從這一行來:

$(this).append(' <span class="closed custom-checkbox"><input type="checkbox" name="closed" value="closed" class="closed" id="closedHoursElement" onchange="closedHours()"><span class="box"><span class="tick"></span></span></span>Closed'); 

另外,你不能讓對話框加載你的小提琴的原因是你包括JS文件的順序錯誤。它應該是jQuery,jQuery UI,然後jquery ui.selectmenu。上的複選框

你改變功能上也有一個缺陷,它應該是這樣的:

$('input[type=checkbox]').change(function() { 
    if (!this.checked) { 
     $(this).parent().siblings('select').removeAttr("disabled"); 
    } 
    else { 
     $(this).parent().siblings('select').attr('disabled', 'disabled'); 
    } 
}); 

即使我改變了這一切,複選框仍然沒有工作,所以我刪除您的自定義的jQuery和jquery ui參考。當我這樣做時,他們工作得很好,所以你已經做了一些事情來定製這些是導致你的問題的原因。您可以查看我的更改here

+0

謝謝你幫助我。看起來我有希望。我試圖將您的更改應用到我的項目中,但它不起作用。我想知道你是否可以從這裏看看:https://skydrive.live.com/redir?resid=C29483CF3A6A14D!665&authkey=!AAIloQkIUSPNaFY。我不知道我錯過了什麼,但在我的情況下,它仍然沒有工作。再次感謝你。 – vladc77

+0

做了一點點工作之後,它看起來像span封裝器就是複選框無法正常工作的原因。我刪除了,並能夠得到切換工作正常。不幸的是,它看起來不像selectmenu小部件關注底層select的禁用屬性。更新小提琴:http://jsfiddle.net/bhayden1/GcQRg/19/ –

+0

對不起,花了更多的時間。我非常感謝您的努力和幫助。 – vladc77