1

我正在使用SharePoint 2010表單庫。根據文本值禁用下拉列

我有一個下拉列,這是依賴於文本輸入列的值。

Text input列中的值來自infopath窗體。

我要的是: -

假設文本列的值是「AU」然後禁用下拉列否則啓用它。

我想在Sharepoint表單庫編輯頁面(Editpage.aspx)中編寫此代碼。

我認爲這將是可能的JQuery。

任何幫助/建議將不勝感激。

- 更新:

這是我使用在SharePoint編輯頁面代碼:

<script type="text/javascript" src="/SiteAssets/jquery-1.6.2.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     if ($("#Test Value").val() != null) { 
      $("Select[Title='Test_Status']").attr('disabled', 'disabled'); 
     } 
    }); 
</script> 

但它不工作!簡而言之,我想要的是當文本列(Test Value)值爲空時,選擇列(Test_Status)應該被禁用,反之亦然。對於Refernence見下圖: enter image description here

enter image description here

+0

jQuery是一個很好的解決方案。你的問題是什麼?你需要幫助jQuery嗎?或者幫助在頁面上放置jQuery?請具體描述你所嘗試過的。 –

+0

謝謝你的回覆... !! 這是我在Sharepoint Edit Page中使用的代碼: 但'它不工作....!我已經嘗試過很多次了! 簡而言之,我想要的是當文本列(Test Value)值爲空時,應該禁用Choice列(Test_Status),反之亦然... !! – Kishan

+0

Kishan。不需要所有的雙重感嘆號和標點符號......! ??等 - 它會讓你的文本難以閱讀。 – Ryan

回答

0

我已經解決了這個問題:

下面是JavaScript的源代碼爲附加。

SRC = 「http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js」

寫這在javasrcipt標籤的所有代碼

$(document).ready(function(){

// add change handler 
$("input[title='Test Value']").change(function() { 
    MasterSelectChange(); 
}); 
// call the change function to set up form for first display: 
MasterSelectChange(); 

});

功能MasterSelectChange()

{

var thisVal = $("input[title='Test Value']").val(); 

if(thisVal == "AU") 
{ 
    $("select[title='Test_Status']").closest("tr").hide(); 

    } 
else 
{ 
     $("select[title='Test_Status']").show(); 

} 

}

1

嘗試:

$(document).ready(function() { 
    if ($("input[title='Test Value']").val()) { 
     $("select[title='Test_Status']").attr('disabled', 'disabled'); 
    } 
    else { 
     $("select[title='Test_Status']").removeAttr('disabled'); 
    } 
}); 
+0

再次感謝.. !! 我試過這個,但只有disbaled條件工作。 當我打開窗體時,Test_Status列被禁用。反過來也不啓用。 – Kishan

+0

供您參考我已添加圖片... !!請看看它...! – Kishan

+0

試試我更新的代碼。 val()應該返回一個空字符串而不是null。而且,實際上,這種情況是不必要的,因此您可以將其完全取出。 –