==运算符的“赋值无效”错误(“Invalid assignment” error from == operator)
我试图写一个简单的方法:
boolean validate(MyObject o) { // propertyA && propertyB are not primitive types. return o.getPropertyA() == null && o.getPropertyB() == null; }
在
== null
部分发生了一个奇怪的错误:令牌==的语法错误。 无效的赋值运算符。
也许我的Java在PLSQL的一个赛季后生锈了。 所以我尝试了一个更简单的例子:
Integer i = 4; i == null; // compile error: Syntax error on token ==. Invalid assignment operator. Integer i2 = 4; if (i == null); //No problem
怎么会这样?
我正在使用jdk160_05。
澄清:我不想分配任何东西,只需在两个布尔值之间执行
&&
操作即可。 我不想这样做:if (o.propertyA() == null && o.propertyB() == null) { return true; } else { return false; }
I was trying to write a simple method:
boolean validate(MyObject o) { // propertyA && propertyB are not primitive types. return o.getPropertyA() == null && o.getPropertyB() == null; }
And got a strange error on the
== null
part:Syntax error on token ==. Invalid assignment operator.
Maybe my Java is rusty after a season in PLSQL. So I tried a simpler example:
Integer i = 4; i == null; // compile error: Syntax error on token ==. Invalid assignment operator. Integer i2 = 4; if (i == null); //No problem
How can this be?
I'm using jdk160_05.
To clarify: I'm not trying to assign anything, just do an
&&
operation between two boolean values. I don't want to do this:if (o.propertyA() == null && o.propertyB() == null) { return true; } else { return false; }
原文:https://stackoverflow.com/questions/2739725
最满意答案
Knockout.js可以很好地完成你正在寻找的东西。 您可以将现有的javascript放入ViewModel,然后在按钮上放置数据绑定,以便在所有字段都验证时启用。 您可以在此处查看如何执行此操作: http : //knockoutjs.com/documentation/enable-binding.html
Knockout.js does a wonderful job of doing exactly what you're looking for. You can slip your existing javascript into a ViewModel, and then put a data-bind on your button to enable if all fields validate. You can see how to do so here: http://knockoutjs.com/documentation/enable-binding.html
相关问答
更多-
在发生提交事件之前,您没有附加keyup事件处理程序。 此时用户已完成所有字段的输入。 将调用$(...).keyup(...)移回dom ready事件。 您确实需要一个额外的事件处理程序来检查用户输入: $(document) .ready(function(){ $('input[name=subdomain]').keyup(subdomain_check); $('input[name=password]').keyup(password_strenght) ...
-
Knockout.js可以很好地完成你正在寻找的东西。 您可以将现有的javascript放入ViewModel,然后在按钮上放置数据绑定,以便在所有字段都验证时启用。 您可以在此处查看如何执行此操作: http : //knockoutjs.com/documentation/enable-binding.html Knockout.js does a wonderful job of doing exactly what you're looking for. You can slip your exi ...
-
如何从远程提交的表单返回JSON格式的验证错误?(How do I return validation errors in JSON form from a form that submits remotely?)[2023-01-23]
首先,你需要解决500错误,我没有采取你的例子,但这是一个粗略的例子。 bugs.js $(document).ready(function() { console.log('hiii'); $('#new_bug') .on('ajax:success', function(e, data, status, xhr) { console.log('success'); console.log(e); console.log(data); console.log ... -
首先你需要知道bug的位置。 为此,在每个函数上使用console.log。 之后,您的代码可以使用更好的算法和正则表达式进行优化。 要知道问题的位置,请检查每个函数的每次返回。 对于主要功能,我会做那样的事情: function validateForm(){ if (validateUserName() && validateFName() && validateSName() && validateEmail() && validateConfirmEmail() && validate ...
-
为什么验证错误仍然存在?(Why do Validation Errors persist?)[2022-06-25]
控制器应该根据请求实例化。 认为ControllerContext很像HttpContext。 它代表单个请求的状态。 由于您将控制器存储在静态字典中,因此您没有清除每个请求的控制器状态,因此它保留在其模型状态中。 一般来说,你不应该为控制器使用Singleton模式。 否则,您需要负责清理每个请求的状态。 无论如何,你可能没有获得太多的表现。 A Controller should be instantiated per request. Think of the ControllerContext be ... -
您需要从submit处理程序中的validate函数返回值: onsubmit="valform();return false" 应该: onsubmit="return valform();" 每当valform返回false时,这将阻止表单提交。 顺便说一下,你的valform函数中的form.submit()调用是没有意义的。 如果函数没有返回false,它将被提交。 if (/*validity checks pass*/) { alert('success'); } else { ...
-
即使发生验证错误,jQuery验证插件也会提交(jQuery validation plugin submits even if validation errors occur)[2023-08-22]
在提交表单之前,您需要验证表单。 您可以在click事件中执行此操作,如: $("#target").click(function () { // Validate the form first if (!$("#dl-mg-form-publish").valid()) return false; // Your form is valid, so continue with you submit logic.. }); 更多信息: .valid() 编辑: 在按键上禁用自动 ... -
您正在注册多个单击事件侦听器。 对.off()的调用将解决此问题。 $('body').on('click','#Save', function (ev) { //ev.preventDefault(); alert('duh - click captured'); $('#client_form').submit(function (e) { alert('1 - submit fired'); e.preventDefault(); ...
-
$.msgbox和$.msgbox都不是阻塞函数,结果在函数回调之前返回,你应该改变你的逻辑。 基本上,表单提交的方式如下: $('#audit_form').submit(function(event){ event.preventDefault(); yourUIAlertFunction(..., ..., function(isSuccess){ if(isSuccess){ submitFormLogic(); ...
-
您应该使用验证submitHandler属性,如下所示: $('#commentForm').validate( submitHandler: function () { $('#result').empty(); $.ajax({ url: "Action/Index", type: "POST", data: { name: $('#name').val ...