[英]How to use jquery real person in view mvc razor asp.net?
我在keith-wood.name/realPerson.html
使用jQuery Real Person。 但是,在配置和测试之后,它是行不通的。如下是视图中的代码片段。看起来还可以,请显示capcha
$('.realperson_text').realperson({ length: 6, chars: $.realperson.alphanumeric });
<div class="form-group input-group-sm"> <h5>Capcha</h5> <div class="realperson_text"></div> @Html.TextBoxFor(p => p.defaultReal, new { @class = "form-control text-uppercase", @placeholder = "type capcha code", @maxlength = "6" }) </div>
public ActionResult UploadProfile(TestModel capcha_demo) { var salt = 12345; if (rpHash(capcha_demo.defaultReal + salt) != Request.Form["realPersonHash"]) { ViewBag.Message = "Capcha wrong"; } }
是的,作为主页中的演示,我不知道Request.Form["realPersonHash"]
是什么。 你能告诉我如何获得吗?
该插件使用的技巧是在表单提交之前添加元素。
在插件代码jquery.realperson.js第112行中,您具有以下代码:
on('submit.' + inst.name, function() {
var name = inst.options.hashName.replace(/\{n\}/, elem.attr('name'));
var form = $(this);
form.find('input[name="' + name + '"]').remove();
form.append('<input type="hidden" class="' + self._hashClass + '" name="' + name +
'" value="' + hash(text + salt) + '">');
setTimeout(function() {
form.find('input[name="' + name + '"]').remove();
}, 0);
});
您可以看到它添加了一个输入(form.append),并在提交之后将其删除
form.find('input[name="' + name + '"]').remove();
这就是所有的把戏!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.