繁体   English   中英

如何在MVC剃须刀asp.net中使用jquery真人?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM