大佬教程收集整理的这篇文章主要介绍了使用ajax和json将单击的文本发送到php,并在弹出窗口中获取php数据,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如果在div class =“ example4DOMWindow”中单击文本,则此代码会将定义的值发送给PHP,然后获取PHP数据,并在弹出窗口中显示从PHP接收的数据.
这是示例http://jsfiddle.net/rigaconnect/q3RcV/1/
这是发送和接收数据的ajax
$(document).ready(function()
{
var one = $("#first_var").text();
var two = $("#second_var").text();
$.ajax({
type: "POST",
url: '__popup-window_ajax.PHP',
data: {var1: one, var2: two },
dataType: "json",
success: function(data) {
$('#load').html(data);
}
});
});
这部分代码显示弹出窗口(此处为示例http://swip.codylindley.com/DOMWindowDemo.html)
<body>
<div id="first_var" class="example4DOMWindow" style="width: 50px;">text one</div>
<div id="second_var" class="example4DOMWindow" style="width: 50px;">text two</div>
<script type="text/javascript">
$('.example4DOMWindow').openDOMWindow({
eventType:'click',
windowsourcEID:'#example4InlineContent',
});
</script>
<div id="example4InlineContent" style="display:none">
<div>
<div id="load"></div>
</div>
</div>
</body>
$p_one = $_POST['var1'];
$p_two = $_POST['var2'];
$test = $p_one. '<br>test<br>'. $p_two;
echo json_encode($test);
该代码仅将定义的var发送到PHP.就像var one = $(“#first_var”).text();因此,如果ajax代码中没有var,则不会发送任何内容.并发送所有变量.
必要的代码发送到PHP仅单击文本.用户单击文本一,发送文本一,不发送文本二;单击文本二,仅发送文本二.
这里https://stackoverflow.com/a/17622947/2360831/http://jsfiddle.net/aGWGn/5/
单击的文本作为值传递给javascript.
试图像这样把所有东西放在一起
$(document).ready(function(){
document.body.onmousedown = whicHelement;
var output = document.getElementById("load")
function whicHelement(E) {
e = e || window.event;
var targ = e.target || e.srcElement;
if (targ.nodeType===3) {// defeat Safari bug
targ = targ.parentNode;
}
output.innerHTML = targ.innerHTML;
}
//var one = $("#first_var").text();
var one = targ;
var two = $("#second_var").text();
$.ajax({
type: "POST",
url: '__popup-window_ajax.PHP',
data: {var1: one, var2: two },
dataType: "json",
success: function(data) {
$('#load').html(data);
}
});
});
但是代码没有通过var one = targ;到PHP文件(var两个也不会通过).
据我了解,主要问题是如何将var targ或var output(?)传递给var one ….
请告诉我什么是不正确的
更新资料
并在弹出窗口中看到
[object HTMLDivElement]
test
text two
text two
更改为var one = targ.innerHTML;但不起作用…
上班需要改变
将var output = document.getElementById(“ load”)更改为var output = document.getElementById(“ load1”)
在html中添加了< div id =“ load1”>< / div>
并改变了
//var one = $("#first_var").text();
var one = targ;
var two = $("#second_var").text();
到var one = $(“#load1”).text();
现在看来工作了.但是认为代码需要改进
解决方法:
如果是这样,从使用jquery的那一刻起,您就不需要所有这些代码.您只需要将’click’事件处理程序附加到.example4DOMWindow并仅发送单击的div的文本即可.
index.html:
<body>
<!--
<script src="jquery-2.0.3.js"></script>
<script src="jquery.DOMWindow.js"></script>
-->
<div id="first_var" class="example4DOMWindow">text one</div>
<div id="second_var" class="example4DOMWindow">text two</div>
<div id="example4InlineContent" style="display:none">
<div id="load"></div>
</div>
<script>
$(document).ready(function() {
$('.example4DOMWindow').openDOMWindow({
eventType:'click',
windowsourcEID:'#example4InlineContent',
});
$(".example4DOMWindow").on('click', function(event){
$.ajax({
type: 'POST',
url: '__popup-window_ajax.PHP',
data: { 'clickedText' : $(this).text() },
success: function(data) {
$('#load').html(data);
}
});
});
});
</script>
</body>
__popup-window_ajax.PHP:
<?PHP
$var = $_POST['clickedText'];
echo json_encode($var);
?>
以上是大佬教程为你收集整理的使用ajax和json将单击的文本发送到php,并在弹出窗口中获取php数据全部内容,希望文章能够帮你解决使用ajax和json将单击的文本发送到php,并在弹出窗口中获取php数据所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。