需要SharePoint的Onchange事件:FormFields

时间:2012-06-04 17:37:13

标签: sharepoint-2010 onchange sharepoint-api

我需要在SharePoint:FormField发生变化时调用javascript函数。这是为了提供一些有关选择的客户端反馈。

我需要在Visual Studio项目中的新内容类型表单上添加它。 SharePoint:FormField似乎没有Onchange事件,就像普通的ASP控件一样。
我查看了ValueChanged事件,但它看起来像只读。

任何建议或帮助将不胜感激

1 个答案:

答案 0 :(得分:3)

找到解决方案:

感谢Google和webborg.blogspot.com/2008/04/...以及mysplist.blogspot.com/2010/03 / ...解决了这个问题。我想补充一点,JavaScript应该是内联的,并且在关注你的SharePoint:FormField

之后
<table cellpadding="0" cellspacing="0" id="onetIDListForm" style="width:100%">
<tr>
<td width="400px"  valign="top"  class="ms-formbody"> 
    <SharePoint:FormField runat="server" ID="MyGender" ControlMode="New" FieldName="MyGender" />
    <SharePoint:FieldDescription runat="server"  ID="field_MyGender_Description"  FieldName="My Gender" ControlMode="New"  /> 
</td>
</tr>
</table> 

<script type="text/javascript"> 
function getField(fieldID) 
{ 
    var docTags = document.all;
    for (var i=0; i < docTags.length; i++) {
        if (docTags[i].title == fieldID) { 

            return docTags[i] 
        } 
    } 
} 

function DisplayMessage()
{
    if (getField('My Gender').value == 'Male') {
     alert('Hello Manhood');
     }
}

getField('My Gender').onchange = function() {DisplayMessage()};

</script>