【发布时间】:2021-03-17 19:22:34
【问题描述】:
更新:我觉得我可能遗漏了关键信息...列类型是个人或组类型。我尝试了一行文本,它工作得很好。不注册为空。但对于其他条目/预填充输入需要使用“人员”或“组”列来确定其他输入。使用元数据
我有一个 SP 列表,其中我的第一列是使用 AJAX 自动填充用户的表单。
它用正确的值填充字段没有问题。我的问题是当您可以看到已自动放置在那里的值并点击表单提交时,它仍然将该字段读取为空白并告诉我“您不能将其留空”。
您在那里看到了值,但它有点被推到文本框的左角,隐藏在输入框默认占位符文本旁边。我想知道这是否也可能导致问题?是否可以隐藏占位符文本?
如果我单击文本框,然后按任意键(Enter/空格/等),它会注意到自动插入的值。
在这被标记为重复之前,我已经对帖子和线程进行了尽职调查,并找到了与此问题类似的帖子,但解决方案不起作用。喜欢这里的这篇文章: val() doesn't trigger change() in jQuery
这是我的电话和附加信息:
$(function(){
$.ajax({
url: webUri + "/_api/sp.userprofiles.peoplemanager/GetMyProperties",
type: "GET",
headers: {
"Accept": "application/json; odata=verbose"
},
success: function(dataCurrentUser){
console.log(dataCurrentUser)
$("[title='User']").val(dataCurrentUser.d.AccountName).keyup().change();
}
})
})
【问题讨论】:
-
让我们看看你的标记。此外,
$().val(dataCurrentUser.d.AccountName).keyup().change();的性能略高一些(看起来更酷)。 -
我敢打赌
.focus().blur()会胜任这项工作。为了便于访问,您需要将焦点返回到调用元素。 -
您确定您没有遇到异步问题吗?例如,如果验证发生在成功回调之前
-
@DanielA.White 我将不得不创建一个需要一点时间的。这就是我在
标签: javascript jquery sharepoint