Jquery添加一个";其他";将正确的变量传递到数据库中
我在表单中使用Select,并具有显示“其他”文本输入框的“其他”选项。但是,我只想将实际值保存在表中的同一列中,因此我需要确保将“Other”文本输入的“value”传递到MySQL表,而不是所选内容的“value”,这显然是“Other”Jquery添加一个";其他";将正确的变量传递到数据库中,jquery,Jquery,我在表单中使用Select,并具有显示“其他”文本输入框的“其他”选项。但是,我只想将实际值保存在表中的同一列中,因此我需要确保将“Other”文本输入的“value”传递到MySQL表,而不是所选内容的“value”,这显然是“Other” 先生 夫人 先生 贵族 另外 业主名称(其他) $('#prop_title')。更改(函数() { $('prop#title_other').css('display',($(this.val()='other')?'block':'none');
先生
夫人
先生
贵族
另外
业主名称(其他)
$('#prop_title')。更改(函数()
{
$('prop#title_other').css('display',($(this.val()='other')?'block':'none');
});
您的$(此)
成为文本框的对象。这就是你的问题所在。将$(this)
更改为局部变量
$('#prop_title').change(function()
{
var item=$(this);
$('#prop_title_other').css('display', (item.val() == 'Other') ? 'block' : 'none');
});
工作示例:首先,JSFIDLE,以前从未见过,非常酷!其次,我仍然有两个相同的id和名称的表单部分的问题,所以我不能确定哪一个将被使用时,我提交的文件Form@M1CreativeDeveloper:JS fiddle的代码与您在问题中提到的代码相同(但已修复)。我猜你的页面中还有其他脚本错误。检查firebug控制台。谢谢。我忘了在文本框中添加“名称”字段,但我认为我没有正确解释。当我提交表单时,我现在有两个名为“prop_title”的字段,当然无法预测将使用哪一个字段。
$('#prop_title').change(function()
{
var display;
if ($(this).val() == 'Other') {
display = "none";
} else { display = "block"};
$('#prop_title_other').css('display', display);
});