我开始玩, jQuery 昨天. 我一直想这样做很长时间, 自从 保罗 · 翼 开始写作 他的一系列 有关为最终用户在古老的 jQuery www.endusersharepoint.com web 站点. 当我使用它, 我希望能添加一系列的"快速和容易"职位像这样. 这篇文章描述了如何将一个已知的文本字段值设置为你想要的一切.
在此方案中, 我创建了自定义列表的"新"窗体外观如图所示:
这是默认的标题栏的自定义列表的新窗体和两个列表列 (没有为站点列; 我认为不应该有什么不同).
目标是要将任意值分配给字段, ""DefaultMeFieldNoSpaces (你可以告诉我有点"没有空格"事情与懦夫, 但我不要在本文末尾香料).
这位 jQuery 为我工作:
<脚本类型 ="文本/javascript"> $(功能() { $(' 输入[标题 = DefaultMeFieldNoSpaces]').attr( {价值: ' 你是在曲折的迷宫般的通道, 人人都一样。}); }); </脚本>
据我所知这位 jQuery 说, "我找任何输入标记的标题 = DefaultMeFieldNoSpaces. 然后, 将所有设置它们的值为一句名言从旧计算机游戏。"
由于只会有一个字段标题与窗体上等于"DefaultMeFieldNoSpaces"我们很放心地将一个值分配给该字段和没有其他.
什么有关字段名称中有空格? 它是几乎相同:
<脚本类型 ="文本/javascript"> $(功能() { $(' 输入[标题 = 将字段分配与空间]').attr( {价值: ' 你是在曲折的迷宫般的通道, 人人都一样。}); }); </脚本>
我认为这是一个相当安全的方法, 意思我们应该能够找到我们想要的字段和字段只我们想要. 如果你看看 HTML SharePoint 给我们, 它也有点乱:
<输入 名称="ctl00$ m 元 g_bdb23c2c_fde7_495f_8676_69714a308d8e 元 ctl00 元 ctl04 元 ctl02 元 ctl00 元 ctl00 元 ctl04 元 ctl00$ ctl00$ TextField" 类型="文本" maxlength="255" id="ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField" 标题="DefaultMeFieldNoSpaces" 类="ms 长" />
可识别并希望唯一的属性,以帮助我们确定我们要向其分配我们任意值的特定列突出的"标题".
这是一个基本的概念. 以任意的方式,这样的字段设置不会赢得任何奖项. 不过, 如果我们想要做一些更有趣的窗体级别东西 (我们所有人总是想做, 答案是肯定的, 我们在完成洗碗后的权利), 像更改的值"字段 b"自动基于价值的"字段", 我们 (我) 需要学习这些东西.
我认为我们最好的机会,以获取真实有用的价值是通过标题, 至少对于文本字段. 可能有一个更好, 更可靠的方法. 如果我找到它, 我将更新这个帖子. 如果你知道一个更好的方式, 请留下评论。</结束>
</结束>
跟我在 Twitter 上 http://www.twitter.com/pagalvin
嗨保罗 – 我偶然您的帖子,虽然研究类似的问题 :-
设置新的日历事件的默认持续时间.
http://blog.pentalogic.net/2009/09/setting-default-duration-for-new-calender-events/
有一个绝妙的技巧,关于获取新的窗体上的脚本 – 它不一样聪明 spjqueryfield 或 spff,但它非常适合快速破解版.
克里斯托弗, 谢谢你的链接!
奥斯卡, 我还没有办法,因为我只是刚刚开始使用它来玩. 当我开始在生产环境中使用它我肯定会写我的经验.
谢谢你到 spjqueryfield 的链接.
保罗, javascript 注入编辑页的方法是什么? 在部署这样做, 简单的方式是最棘手, 作为我来说. 你真的不应该要每次创建自定义窗体… 我觉得这, http://spjqueryfield.codeplex.com/ , 是一个良好的开端. 它一次部署, 然后,根据需要重复使用…
保罗已对操纵 SharePoint 表单字段的 Codeplex 项目:
http://spff.codeplex.com/