簡體   English   中英

當他已經有信息時,如何使用 javascript 檢查共享點列表是否包含特定單詞

[英]How can I use javascript to check if a sharepoint list contains a specific word, when he is already have information

在我的網站上,我有列列表。 一個喜歡“狀態”(選擇列。下拉菜單),當用戶在完成時更改此列時需要提醒他。

列表的 HTML 代碼和 JQuery 代碼(過去在 WepPart 上的腳本編輯器中)

 $(document).ready(function(){ $(".ms-formbody").blur(function() { var Text = $(this).val(); if (Text == "Finished") { alert("Alert"); } }); });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <tr> <td width="113" class="ms-formlabel" nowrap="true" valign="top"> <span class="ms-h3 ms-standardheader" id="Status"> <nobr>Status <span title="This is a required field." class="ms-accentText"> *</span> </nobr> </span> </td> <td width="350" class="ms-formbody" valign="top"> <!-- FieldName="Status" FieldInternalName="Status" FieldType="SPFieldChoice" --> <span dir="none"> <select title="Status Required Field" class="ms-RadioText" id="Status_30b2ab26-c1c0-48fd-b190-854b32fe67ca_$DropDownChoice"> <option value="Planned">Planned</option> <option value="Development">Development</option> <option value="Executing">Executing</option> <option selected="selected" value="Finished">Finished</option> <option value="Cancelled">Cancelled</option> </select> <br> </span> <span class="ms-metadata">Choice</span> </td> </tr>

好的,這里有幾個問題:

1) 您在 jQuery 中選擇了完全錯誤的元素。 目前它將匹配<td元素,但它沒有任何更改或模糊事件,也沒有值。 您需要掌握下拉列表以檢測何時更改。 給定下面的 HTML,您可以使用<select獲得的ms-RadioText類。

2)“模糊”是錯誤的處理事件 - 只有當用戶在選擇一個值后將焦點從下拉列表中移開時才會發生這種情況。 你不能指望這實際發生。 “變化”是正確的事件。

3)您對選擇更改時應該發生什么的確切要求不清楚並且(從評論中)自問題發布以來已經發生變化,所以我將舉一個例子,它只是簡單地報告新選擇的值場景。 如果您想做比這更具體的事情,您可以輕松添加if語句或您需要的任何內容。

演示:

 $(document).ready(function(){ $(".ms-RadioText").change(function() { var Text = $(this).val(); alert(Text); }); });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <tr> <td width="113" class="ms-formlabel" nowrap="true" valign="top"> <span class="ms-h3 ms-standardheader" id="Status"> <nobr>Status <span title="This is a required field." class="ms-accentText"> *</span> </nobr> </span> </td> <td width="350" class="ms-formbody" valign="top"> <!-- FieldName="Status" FieldInternalName="Status" FieldType="SPFieldChoice" --> <span dir="none"> <select title="Status Required Field" class="ms-RadioText" id="Status_30b2ab26-c1c0-48fd-b190-854b32fe67ca_$DropDownChoice"> <option value="Planned">Planned</option> <option value="Development">Development</option> <option value="Executing">Executing</option> <option selected="selected" value="Finished">Finished</option> <option value="Cancelled">Cancelled</option> </select> <br> </span> <span class="ms-metadata">Choice</span> </td> </tr>

使用下面的代碼來實現它。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $("select[title='Status Required Field']").change(function(){
        if($(this).val()=="Finished"){
            alert("Alert");
        }
    });
});
</script>

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM