[英]How do I pass value of a variable in jquery to PHP without submitting form or refreshing the page?
我的ajax是这样的:
$.ajax({
type: "POST",
url: 'index.php',
datatype: 'html',
data: { password : password}
});
一直试图将其存储在$pword
。 但它不存储。 PHP:
if(isset($_POST['password']))
{
// store session data
$pword=$_POST['password'];
}
HTML是这样的:
<input type="password" placeholder="password" id="password" name="password"/>
请帮忙。
首先: 服务器端(PHP)和HTML代码没有错。
因此对于jQuery部分:您需要像我在下面那样纠正一行:
$.ajax({ type: "POST", url: 'index.php', datatype: 'html', data: { password : $("#password").val() //here i asked jquery to fetch entire value of my html input(with an id of "password") as text(Not an Object) so it gives me the entered text value. }}) .success(function(data) { alert(data.toString()); });//optional function:runs when server responses to your request
如果您解释您将要做什么,我可以留下更详细的帮助。
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#password').on('blur',function(){
var password = $('#password').val();
$.ajax({
type: "POST",
url: 'index.php',
datatype: 'html',
data: { password : password
},
success: function(data){
alert(data);
}
});
})
})
</script>
<form method="post">
<input type="password" placeholder="password" id="password" name="password"/>
</form>
使用form.serialize()发送数据。
$.ajax({
type: "POST",
url: 'index.php',
datatype: 'html',
data: form.serialize()
});
从jquery文档中, $ .ajax请求应如下所示:
$.ajax({
method: "POST",
url: "some.php",
dataType: 'json',
data: { name: "John", location: "Boston" }
})
.done(function( msg ) {
alert( "Data Saved: " + msg );
});
另一个建议是创建一个按钮。 按下时,数据将发送到PHP文件。
<input type="password" placeholder="password" id="password" name="password"/>
<input type="button" id="submit" name="submit" value="submit" />
jQuery代码为:
$(document).ready(function(){
$('#submit').click(function(){
$.ajax({
method: "POST",
url: "my-php-file.php",
dataType: 'json',
data: { password: $('#password').val() }
})
.done(function( msg ) {
alert( "Data sent: " + msg );
});
});
});
HTML
<input type="password" placeholder="password" id="password" name="password"/> <input type="button" onclick="sendData()" value="Ok">
使用Javascript
function sendData(){ $.ajax({ type: "POST", url: 'index.php', datatype: 'html', data: { password : $("#password").val()} }); }
您可以使用javascript setTimeout函数将表单值传递到php页面,如下所述,
我在setTimeout函数内部添加了一个名为passData()的函数,因此它调用了提到的delay的passData()函数。
HTML:
<input type="password" placeholder="password" id="password" name="password"/>
使用Javascript:
setTimeout(function() { passData() }, 3000);
function passData(){
var password = $("#password").val();
$.ajax({
type: "POST",
url: 'index.php',
datatype: 'html',
data: { password : password}
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.