2013-05-08 50 views
2

我有一個網頁有40個奇怪的控件,如文本框,單選按鈕,複選框,下拉列表。我必須實現一種場景,如果用戶更改了任何控件的狀態並希望從頁面導航而不保存它,則應用程序必須彈出一個窗口。在網頁上驗證不同的控件

我明白,這需要在客戶端完成,但這裏的問題是如何檢查哪40個奇怪的控制已被更改。所有這些字段不一定是強制性的。

回答

1

您可以在頁面加載時保存其值,然後在發送表單時將這些值與當前值進行比較。

此示例警報改變控件的ID:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('.inputToCheck').each(function() { 
      $(this).data("oldValue", $(this).val()) 
     }); 

     $('#btn').click(function() { 
      $('.inputToCheck').each(function() { 
       if ($(this).data("oldValue") != $(this).val()) 
        alert($(this).attr('id')); 
      }); 
     }); 
    }); 
</script> 

<input type="text" id="txt1" class="inputToCheck" value="10" /> 
<input type="text" id="txt2" class="inputToCheck" value="20" /> 
<input type="text" id="txt3" class="inputToCheck" value="30" /> 
<input type="button" id="btn" value="send" /> 
+0

將這項工作的所有頁面上的控制? – ABCD 2013-05-08 10:21:09

+0

@Saurabh:你必須以某種方式選擇你想要檢查的。在這個例子中,我假定他們有「inputToCheck」類。我也假定他們是輸入,你想檢查他們的值。 – nima 2013-05-08 10:37:19

+0

非常感謝您的回覆。但事情是我只想驗證它們是否有任何價值(在文本框的情況下,下拉菜單中)或已標記檢查無線電和複選框。我想要這種驗證,以便它可以幫助我在頁面上進行任何控制。那可能嗎?? – ABCD 2013-05-08 12:49:56

相關問題