快速而方便地: 更好的對使用 jQuery 隱藏 SharePoint Form 上的文字欄位

這是另一個帖子中的我 系列 有關如何使用 jQuery 使用 SharePoint.
如果您想要瞭解更多關於 jQuery, 我強烈建議你: jQuery 在行動 由熊 Bibeault 和 Routes.

以前, 我寫了關於如何使用 jQuery 來查找和隱藏表單的文字欄位. 我不在乎的具體辦法 (我被束縛的父母 — — 那只是不做這些天, 至少在家庭的品質).

當開始去想它, 我知道我需要去找 <TR> 我可以調用隱藏() 方法. 我找到正確的早期努力 <TR> 這像是:

$(' tr:已(輸入[標題 = 隱藏我!])');

問題是它會找到每個 <TR> 我有任何父關係到隱藏的標記! 欄位, 即使隱藏我! 是多層深的嵌套 <TR>的. 原來,在我的沙箱表單, 該運算式找到 9 不同 TR 的有隱藏我! 作為一個孩子在其 DOM 樹的某個地方. 我意識到,能回到上一棵樹從輸入欄位本身走, 這就是我如何結束濫用父母, 但它不好我坐在一起.

給這一些想法和我讀了最後的事情之一是合情合理的: 我可以用不() 方法以修剪出 <TR>我不想在我包裝一套. 我被引到這:

$(' tr:已(輸入[標題 = 隱藏我!])').不(' tr:已(tr)').隱藏();

第一位發現所有 <TR> 我有隱藏的標記! 他們自己層次結構中任何位置的欄位. 它然後帶出任何 <TR> 那也有一個孩子 <TR>. 這使我們與單 <TR> 那:

1) 有無 <TR> 子記錄

2) 沒有輸入的欄位作為孩子.

然後,我們可以應用隱藏() 設置到結果的方法和我們做完了.

我還是有點緊張, 但作為連結的父母不一樣緊張.

我不知道這不是是一種最佳做法. 可能更適當的方式確定的只是 <TR> 我們關心的 SharePoint 表單中. 如果你知道, 請張貼評論.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

2 上“的想法快速而方便地: 更好的對使用 jQuery 隱藏 SharePoint Form 上的文字欄位

  1. pingback的: 隱藏基於其他值的 SharePoint 編輯表單中的欄位 « jbmurphy.com

留言

您的電子郵件地址不會被公開. 必需的地方已做標記 *