找到了一种使用纯 javascript (JQuery) 和来自http://darrenjohnstone.net/的 SPAPI 代码的方法。
该列表包含两个字段,title 和 BodyCopy
我已经创建了一个表单,询问标题和问题,两个文本字段,然后提交按钮调用以下函数:(请注意,ServerAddress 和 LIST_question 需要更新为您自己的详细信息)。
然后,该函数使用 LISTS.ASMX 中的 SOAP 服务上传详细信息,并使用响应获取新项目的 ID 并重定向页面。
var LIST_question = '{xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}';
var ServerAddress = 'http://xxx/';
function submitQuestion()
{
var title = new String($("#title").val());
var t = new String($("#question").val());
t=t.trim();
if(t=="")
return;
title=title.trim();
if(title=="")
return;
var lists = new SPAPI_Lists(ServerAddress) ;
//
var newItem = { Title : title, BodyCopy : t};
var items = lists.quickAddListItem(LIST_question, newItem);
var id=-1;
if (items.status == 200)
{
var rows = items.responseXML.getElementsByTagName('z:row');
if(rows.length ==1)
{
var r = rows[0];
var id = r.getAttribute('ows_ID');
window.location.href='DispForm.aspx?ID='+id;
}
else
{
alert("Error: No row added");
}
}
else
{
alert('There was an error: ' + items.statusText);
return;
}
}