jQuery在选择选项时不改变文本
jQuery not changing text on selection of option
在我开始之前,我会让你知道我在我的页面中使用https://github.com/marghoobsuleman/ms-Dropdown,但我已经尝试过使用和不使用该源的实现,所以我认为这与它没有多大关系。
这是我的选择菜单
<select id="payments2" name="payments2" style="width:100%; ">
<option value="" data-description="Exchange To">Processor</option>
<?php
$processor = $db->query("SELECT * FROM `processors`");
while($pro = $processor->fetch_assoc()) { ?>
<option value="<?php echo $pro['id']; ?>" data-image="<?php echo $pro['icon']; ?>"><?php echo $pro['name']; ?></option>
<?php } ?>
</select>
<form class="form-style-7">
<ul>
<li>
<label for="test">Name</label>
<input type="text" id="p1" name="test" maxlength="100">
<span>Stuff Here</span>
</li>
它填充得很好,这不是问题,这是我正在使用的jQuery
$(document).ready(function() {
$("#payments").msDropdown({visibleRows:4});
$("#payments2").msDropdown({visibleRows:4});
$("#payments2 option").filter(function() {
return $(this).text() == $("#p1").text();
}).attr('selected', true);
$("#payments2").live("change", function() {
$("#p1").val($(this).find("option:selected").text());
});
});
我不确定为什么当我改变我的选择时,它在输入框中不显示任何东西。
我对jQuery还是有点陌生,所以它可以是一些简单的东西,但我可以使用一个点在正确的方向
live()
很早以前就被弃用并从jQuery中删除了。你应该更新你的jQuery版本,并使用on()
的委托:
$(document).on('change', "#payments2", function() {
$("#p1").val($(this).find("option:selected").text());
});
问题最有可能出现在live函数的使用中。这在jquery中不再支持(已弃用)。您可以像这样更新代码以使用委托事件:
$(document).on("change", "#payments2", function() {
$("#p1").val($(this).find("option:selected").text());
});
你应该使用。on(),而不是。live()…
相关文章:
- 用于根据用户改变文本区域的字体颜色的JavaScript'的选择
- Jquery改变文本框边框,但只有一次
- jQuery在选择选项时不改变文本
- JavaScript代码通过点击不同的图像来改变文本区域的值
- 多个显示/隐藏改变文本
- 改变文本拖动根据一些条件- Extjs 4
- 如何在元素悬停时动态改变文本
- 旧的javascript程序来改变文本和背景颜色的单元格
- 如何改变文本时倒数零
- 使用指令式Angular JS动态改变文本的颜色
- 改变文本区域onclick的值将插入符号置于一个奇怪的位置,但仅在IE中
- 如何在没有第三方JS库的情况下改变文本区域滚动条的颜色
- 如何使用Angularjs指令根据动态值改变文本颜色
- 随着HTML5范围滑动条的移动,不断改变文本框的值
- 改变文本的颜色在定时间隔
- 动态crm:用javascript改变文本方向
- 我的javascript只工作,它's不改变文本
- 谷歌可视化饼图-改变文本坐标
- 如何改变文本颜色的背景变化
- 我有一个按钮,可以在点击时改变文本,但不会变回来