我正在尝试使用ajax_load加载php文件时将输入项的值传递给php。这是我到目前为止,但它不起作用。
html和jquery:
<tr>
<td></td>
<td>
<button class="grey">Test Settings</button></td>
</tr>
<tr>
<td></td>
<td><div class="font-size-15 color-semi-black" id="result"></div></td>
</tr>
<input type="hidden" name="control" value="1"/>
<!--Test Settings-->
{literal}
<script>
$.ajaxSetup({
cache: false
});
var ajax_load = "<img src='images/loaders/small-loader.gif' alt='loading...' />";
var value = $("input[name='control']").val();
// load() functions
var loadUrl = "demo/test_settings.php?val=" + value;
$("button").click(function() {
$("#result").html(ajax_load).load(loadUrl);
});
</script>
{/literal}
PHP:
if ($val == '1'){
//process code here.
}
它没有传递输入的值。有什么建议吗?
答案 0 :(得分:2)
您的请求是GET
,如下所示: -
/demo/test_settings.php?val=1&_=1401278450924
因此您需要$_GET
上的test_settings.php
获取您的价值
if ($_GET['val'] == '1'){
答案 1 :(得分:1)
在$.load
将数据作为参数传递给它。
$("button").click(function(){
$("#result").html(ajax_load).load(loadUrl , {
val : ...
});
});
在你的php文件中:
if (isset($_REQUEST["val"]) && $_REQUEST["val"] == 1) {
...
}
如果传递一个对象,它将作为POST传递,否则它将作为GET传递。
答案 2 :(得分:0)
if (count($_GET) && $_GET['val'] == '1'){
}