[英]Jquery and sharepoint, trying to get a value from a field, and put it into another field
所以我有一個奇怪的問題,我試圖從一個名為 name 的文本字段中獲取值並將其放入另一個名為 title 的字段中。 它根本不起作用。
基本上,我一直在這樣做:我正在使用的字段值是從字段的 id 部分獲得的。
<script type="text/javascript" src="https://secureteams.app.aexp.com/sites/fiucmc/SiteAssets/jquery-3.1.0.min.js">
// getting the field
var email = $("#FileLeafRef_8553196d-ec8d-4564-9861-3dbe931050c8_$onetidIOFile").val();
// setting the value
$("#Title_fa564e0f-0c70-4ab9-b863-0177e6ddd247_$TextField").val( email );
</script>
誠然我在 JQuery 不是最好的,我真的不認為這應該那么難。
var email = $("input[title='FileLeafRef']").val();
$("input[title='Title']").val( email );
如果FileLeafRef是字段標題,則應該可以正常工作。 但是您需要將此腳本添加到“文檔上載”表單中,因為從對Thriggle問題的回答中,我不確定代碼是否在正確的位置運行。
終於找到了解決方案! 它基於此網站: 將值設置為TextBox字段
您必須遵循的重要步驟:
<script language='javascript' type='text/javascript' src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script> $(document).ready(function() { $.ajax( { url: "http://yourSharepointSite/_api/SP.UserProfiles.PeopleManager/GetMyProperties?$select=Email", method: "GET", headers: { "accept": "application/json;odata=verbose" }, success: function (data) { var result = data.d; var userMail= result.Email; var textBoxCurrentUserEmail = $("#ctl00_ctl33_g_58328422_c761_4475_a673_5c3f263a5dab_FormControl0_V1_I1_T3"); var textBoxIsAuthor = $("#ctl00_ctl33_g_58328422_c761_4475_a673_5c3f263a5dab_FormControl0_V1_I1_T4"); textBoxCurrentUserEmail .val(userMail); textBoxCurrentUserEmail .focus(); textBoxIsAuthor .focus(); window.console && console.log(userMail); }, error: function (err) { alert(JSON.stringify(err)); } }); }); </script>
請不要忘記在元素上使用.focus(),因為這將顯示新插入的數據!
最后,您可以將列表設置為以對話框模式顯示!
我認為問題在於作為字段名稱的一部分包含的 $。 jQuery 將它們解釋為不同變量的開始(我認為),因此不會解決您期望的領域。 我找到的解決方案是模式匹配僅適用於小 forms 的名稱,其中列的名稱沒有沖突,當然您需要考慮如果表單進一步發展將來可能會發生什么。
無論如何,如果您想嘗試一下,我認為以下方法可行:
<script type="text/javascript" src="https://secureteams.app.aexp.com/sites/fiucmc/SiteAssets/jquery-3.1.0.min.js">
// getting the field
var email = $('input[id^="FileLeafRef"]').val();
// setting the value
$('input[id^="Title"]').val( email );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.