Can any one help me to sort out the problem. Why my javascript file not getting value from controller . here is my javacript code
$("#email").click(function() {
alert("dhukse");
${remoteFunction(
controller: 'login',
action:'checkNumber',
update:'myDiv',
params:'\'number=\'+$(\'#phone\').val()'
)};
alert(${number});
});
Here is my controller function
def checkNumber(){
def number=params.number
println params.number
def key
def user=Login.findByPhone(params.number)
println user
if(user){
key=1
}
else{
key=0
}
println key
//println user.phone
[number:key]
}
file.gsp:
<div id="mydiv"></div>
<g:javascript>
$("#email").click(function() {
var phone = $("#phone").val();
${remoteFunction(
controller: 'login',
action:'checkNumber',
update:'mydiv',
params:[number:phone]
)};
});
</g:javascript>
_response.gsp:
<g:if test="${user}"> | <g:if test="${user}">
<p>key: 1 </p> | <p>phone: ${user?.number} </p>
</g:if> | </g:if>
<g:else> | <g:else>
<p>key: 0 </p> | <p>not user </p>
</g:else> | </g:else>
Controller:
class LoginController {
def checkNumber(PhoneCommand command){
println command?.number
def user=Login.findByPhone(command?.number)
render template: "response", model: [user:user]
}
}
@grails.validation.Validateable
class PhoneCommand {
String number
static constraints = {
number(blank: true, matches: "\d+")
}
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.