我想知道如何将变量从javascript发送到php,以便创建一个包含动态行和的变量。
更具体地说:当我在搜索框中搜索时,我想得到行数(1个匹配项是1行,2个匹配项是2行,依此类推)
我尝试实现这个:document.getelementbyid(“i1”).value=allcells.length;所以我后来可以调用php,但我没有工作。
这是我的javascript,顺便说一句,javascript工作得很完美。
<script language="javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function()
{
$('#search').keyup(function() {
searchTable($(this).val());
});
});
function searchTable(inputVal)
{
var table = $('.table');
table.find('tr').each(function(index, row)
{
var allCells = $(row).find('td');
if (allCells.length > 0) {
var found = false;
allCells.each(function(index, td)
{
var regExp = new RegExp(inputVal, 'i');
if (regExp.test($(td).text()))
{
found = true;
return false;
document.getElementById("i1").value = allCells.length;
}
});
if (found == true)
$(row).show();
else
$(row).hide();
}
});
}
$(function()
{
$('#table a').click(function(e)
{
e.preventDefault();
$('#result').val($(this).closest('tr').find('td:first').text());
});
});
</script>
我想在我的表格标题中动态地向她吐出行数的总和。
<h3>Total: (<?php print_r($_GET["i1"])?>) </h3>
我希望你能帮助我。
3条答案
按热度按时间u3r8eeie1#
您可能还没有了解javascript和php之间的区别
javascript是clientside,这意味着一切都由本地系统处理。php是服务器端的,这意味着一切都由服务器处理并解析为html。
不能像以前那样将值从javascript发送到普通php中。但是,您可以发送一个post或访问同一个脚本,并让它重新加载脚本的一部分
http://api.jquery.com/jquery.get/
http://api.jquery.com/jquery.post/
roqulrg32#
我也建议使用ajax或其他东西将javascript值传递给php。您可以创建ajax调用,从javascript添加数据,并在php文件中捕获数据。
在php文件中,可以执行以下操作:
n3ipq98p3#
你不是第一个想要这样的人,也不是第一个被告知这不可能是你想象的那样。当您浏览到php页面时,基本上是这样的:
浏览器向服务器发送http请求
服务器确定要发送到浏览器的页面
服务器发现您需要一个php页面
服务器执行php
服务器将php返回的内容发送到浏览器
浏览器不知道php,只显示html
浏览器执行javascript。
现在重要的一点是浏览器不知道什么是php,但是可以执行javascript,而服务器不知道什么是javascript(为了简单起见),但是可以执行php。底线:两者之间很难沟通,因为它们是在不同的地方执行的。您很可能希望使用ajax,因此下面是一个超级简单的示例:
我们将获取的php页面:
javascript(使用jquery)获取php页面: