Javascript 如何使用引导验证程序验证SPPeoplePicker
我正在尝试验证SPPeoplePicker控件,但它似乎不起作用。有人能帮我验证一下吗 这是我的密码: HTMLJavascript 如何使用引导验证程序验证SPPeoplePicker,javascript,jquery,asp.net,twitter-bootstrap,validation,Javascript,Jquery,Asp.net,Twitter Bootstrap,Validation,我正在尝试验证SPPeoplePicker控件,但它似乎不起作用。有人能帮我验证一下吗 这是我的密码: HTML 通过编写用于验证ClientPicker的自定义函数,我成功地实现了我的目标。代码如下: HTML: 你能添加你的错误信息吗?我没有收到任何错误。控制台中至少没有一个。控件本身工作正常。问题是,当我选择一个用户时,验证器不工作。如果控件中有已解析的用户,则显示绿色,如果没有用户或用户无效,则显示红色。哈哈,我刚刚看到$('myPicker')中缺少“#”。我现在要测试它并发布更新。所
通过编写用于验证ClientPicker的自定义函数,我成功地实现了我的目标。代码如下: HTML:
你能添加你的错误信息吗?我没有收到任何错误。控制台中至少没有一个。控件本身工作正常。问题是,当我选择一个用户时,验证器不工作。如果控件中有已解析的用户,则显示绿色,如果没有用户或用户无效,则显示红色。哈哈,我刚刚看到$('myPicker')中缺少“#”。我现在要测试它并发布更新。所以您可能会出现错误“undefined没有名为'attr'的属性…”。。。没有?没有,没有错。将其更改为$(“#myPicker”)后,代码似乎仍然没有任何作用。无论我输入什么,字段都会亮起绿色。
<div id="myPicker" class="form-group has-feedback">
<div class="col-xs-4">
<label for="peoplePickerDiv" class="control-label">Username</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-user" aria-hidden="true"></span></span>
<div id="peoplePickerDiv"></div>
</div>
<span class="glyphicon form-control-feedback"></span>
<span class="help-block with-errors"></span>
</div>
</div>
$('#peoplePickerDiv_TopSpan_HiddenInput').attr('data-user', 'user');
$('#aspnetForm').validator({
custom: {
user: function ($el) {
var peoplePickerElement: SPClientPeoplePicker = SPClientPeoplePicker.SPClientPeoplePickerDict['peoplePickerDiv_TopSpan'];
var user: ISPClientPeoplePickerEntity[] = peoplePickerElement.GetAllUserInfo();
if (user[0].IsResolved == true) {
$('myPicker').attr('has-success');
return "IT WORKS";
}
else if (user[0].IsResolved == false) {
$('myPicker').attr('has-danger');
return "Invalid User";
}
}
}
});
});
<div id="myPicker" class="row has-feedback">
<div class="col-xs-4">
<label for="peoplePickerDiv" class="control-label">Username</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-user" aria-hidden="true"></span></span>
<div id="peoplePickerDiv"></div>
</div>
<span id="ppFeedIcon"class="glyphicon form-control-feedback"></span>
<span id="ppFeedMsg" class="help-block with-errors"></span>
</div>
</div>
var peoplePickerElement: SPClientPeoplePicker = SPClientPeoplePicker.SPClientPeoplePickerDict['peoplePickerDiv_TopSpan'];
$('#myPicker').bind('DOMNodeInserted DOMNodeRemoved DOMSubtreeModified', function () {
if ( peoplePickerElement.GetAllUserInfo().length == 0) {
$('#myPicker').removeClass('has-success').addClass('has-error');
$('#ppFeedIcon').addClass("glyphicon-remove").removeClass("glyphicon-ok");
$('#ppFeedMsg').html('Invalid user.');
}
else if (peoplePickerElement.GetAllUserInfo().length > 0 ) {
$('#myPicker').addClass('has-success').removeClass('has-error');
$('#ppFeedIcon').addClass("glyphicon-ok").removeClass("glyphicon-remove");
$('#ppFeedMsg').html("");
}
});