我正在使用以下内容自动刷新div的内容。
$(document).ready(function() {
$("#log").load("test.php?q=" + $('#sq').val());
var refreshId = setInterval(function() {
$("#log").load("test.php?q=" + $('#sq').val());
}, 1000);
$.ajaxSetup({ cache: false });
});
这似乎工作正常。我有一个名为'sq'的文本字段,其中输入的任何内容都由test.php搜索。
我的页面还有2个其他表单字段。 复选框和另一个文本字段。该复选框的ID为“chk”,文本字段为“txt”。
如果勾选复选框并在文本字段中输入值,我想要更改load()使用的URL。显然,这也需要包括'sq'。
有人可以指出我正确的方向。
勾选复选框的URL是:(现在是否是)
test.php?q=VALUE_FROM_sq
勾选复选框后,需要:
test.php?s=1&txt=VALUE_FROM_txt&q=VALUE_FROM_sq
然后test.php可以使用$ _REQUEST来获取传递的值。
我的网络盒只支持php4,所以这限制了我一些..
有人可以指出我正确的方向。感谢
答案 0 :(得分:3)
只需在代码中添加一些逻辑:
$(document).ready(function() {
$.ajaxSetup({ cache: false });
var refreshId = setInterval(LoadLog, 1000);
LoadLog();
});
function LoadLog() {
var sq = $('#sq').val();
var text = $("#txt").val();
var url = "test.php?q=" + encodeURIComponent(sq);
if ($("#chk").is(":checked") && text.length > 0)
url += "&s=1&txt=" + encodeURIComponent(text);
$("#log").load(url);
}
答案 1 :(得分:0)
您可以将URL保存在单独的变量中,并在复选框的已更改事件上更新它。
var url = "test.php?q=VALUE_FROM_sq"
$(document.body).on('change', '#chk', function (event) {
if ($(this).is(':checked')) {
url = "test.php?s=1&txt=VALUE_FROM_txt&q=VALUE_FROM_sq"
} else {
url = "test.php?q=VALUE_FROM_sq"
}
}