我想做的是同时输出文本框值和下拉列表所选值。原因是我想最终排序结果通过一个mysql数据库表。现在……当我改变文本框,它会添加到下拉列表值,这是我想要的。但是,当我更改下拉列表值时,它将无法识别文本框的值,并恢复到加载文档时的值。我如何抓住这两个值和回声,并能够改变他们,并查看变化时,我在文本框上'键'或'更改'下拉列表值。提前谢谢。
jquery$(document).ready(function () {
var type_term = $("#type option:selected").text()
var search_term = $("#search").val()
$.post('search_db.php',{type_term:type_term, search_term:search_term}, function (data) {
$('#search_results').html(data)
});
$('#search').keyup(function() {
var search_term = $("#search").val()
$.post('search_db.php',{type_term:type_term, search_term:search_term}, function (data) {
$('#search_results').html(data)
});
});
$('#type').change(function() {
var type_term = $("#type option:selected").text()
$.post('search_db.php',{type_term:type_term, search_term:search_term}, function (data) {
$('#search_results').html(data)
});
});
});
HTML <input id="search" type="text" value="Value">
<select id="type">
<option>Type1</option>
<option>Type2</option>
</select>
<div id="search_results"></div>
searchdb.php
$type_term = $_POST['type_term'];
$search_term = $_POST['search_term'];
echo $type_term;
echo $search_term;
尝试为每个事件设置两个表单元素的变量,而不是只更改一个。
$(document).ready(function () {
var type_term = $("#type option:selected").text()
var search_term = $("#search").val()
$.post('search_db.php',{type_term:type_term, search_term:search_term}, function (data) {
$('#search_results').html(data)
});
$('#search').keyup(function() {
var search_term = $("#search").val()
var type_term = $("#type option:selected").text()
$.post('search_db.php',{type_term:type_term, search_term:search_term}, function (data) {
$('#search_results').html(data)
});
});
$('#type').change(function() {
var search_term = $("#search").val()
var type_term = $("#type option:selected").text()
$.post('search_db.php',{type_term:type_term, search_term:search_term}, function (data) {
$('#search_results').html(data)
});
});
});