c# - 无法使用 javascript 检索 SPList 项目

标签 c# javascript asp.net .net caml

我正在尝试使用 JavaScript 在 Sharepoint 列表中搜索名为“John”的人。查询似乎失败了,因为我收到一 strip 有错误的警报:请求失败。一种或多种字段类型未正确安装。进入列表设置页面删除这些字段。未定义

这表明脚本最终以 onQueryFailed() 方法结束。我找不到 CAML 的任何问题,并且使用了内部列名称。

.aspx 中的代码:

<script type="text/javascript">
            function MyJavascript() {
            var siteUrl = '/sites/MySite/';
            var clientContext = new SP.ClientContext(siteUrl);
            var oList = clientContext.get_web().get_lists().getByTitle('People');

            var camlQuery = new SP.CamlQuery();
            camlQuery.set_viewXml('<View><Query><Where><Eq><FieldRef Name="\'Name\'"/>' +
            '<Value Type=\'Text\'>John</Value></Eq></Where></Query></View>');
            this.collListItem = oList.getItems(camlQuery);

            clientContext.load(collListItem);
            clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));

        }

        function onQuerySucceeded(sender, args) {
            var listItemInfo = '';

            var listItemEnumerator = collListItem.getEnumerator();
            while (listItemEnumerator.moveNext()) {
                var oListItem = listItemEnumerator.get_current();
                listItemInfo += '\nID: ' + oListItem.get_id() +
                '\nName: ' + oListItem.get_item('Name') +
                '\nAge: ' + oListItem.get_item('Age');
            }

            alert(listItemInfo.toString());
        }

        function onQueryFailed(sender, args) {
            alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
        } 

        </script> 

将脚本注册到按钮的 .cs 代码:

SubmitButton.Attributes.Add("onclick", "MyJavascript(); return false;");

有什么想法吗?

最佳答案

尝试将 ExecuteOrDelayUntilScriptLoaded(MyJavaScript, "sp.js"); 直接放在 siteUrl 变量下方。

关于c# - 无法使用 javascript 检索 SPList 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12429743/

相关文章:

c# - 无法加载 https ://localhost:<port>/api/try: No 'Access-Control-Allow-Origin'

C# 二进制编写器自定义

javascript - Google Sheets API 返回 404

javascript - 如果 setInterval 被清除?

asp.net - IIS 8.5抛出404.3错误的ASPX页面

c# - 使用 Reflection.Emit 从派生类调用 BaseClass 中的私有(private)方法

c# - c# 中的 sql 查询中的索引(从零开始)

javascript - Javascript代码可以隐藏吗?

asp.net - 使用 JQuery ajax 调用 webmethod 时调用 page_load

javascript - 如何在自动完成文本区域的 Jquery 函数中将变量分配为 Id