我有一个输入字段,如下所示,
<input name="update_price" type="text" id="update_price" value="£" size="8"
maxlength="8" />
我想从选择框的值中获取一些价格值并在£符号后添加它,如何在jquery中实现,
<form>
<select name="select" id="select">
<option>Select your pizza</option>
<option value="6.65">NY, 10", £6.65</option>
<option value="8.95">NY, 12", £8.95</option>
<option value="11.95">NY, 16", £11.95</option>
<option value="3.45">Chicago, 7", £3.45</option>
<option value="6.65">Chicago, 10", £6.65</option>
<option value="8.95">Chicago, 12", £8.95</option>
<option value="11.95">Chicago, 16", £11.95</option>
<option value="19.95">Chicago, Beast 24" x 18", £19.95</option>
</select>
</form>
$(function()
{
$('#select').change( function() {
$('input[name=update_price]').val($("#select :selected").val() );
});
});
它适用于上面的代码但是£符号消失了,任何帮助都会受到赞赏。
答案 0 :(得分:4)
过去我在输入框中使用了货币符号的背景图像。这样,符号可以看起来很漂亮,左对齐(当值是右对齐的)时,它不会妨碍计算。
希望有所帮助
答案 1 :(得分:4)
文件和页面的编码是否相同?如果你想使用像井号这样的特殊字符,你必须保存你的javascript文件UTF-8(没有bom字符。你可以使用notepad ++或类似的编辑器)
如果您为输入指定了id,那么为什么不使用它来分配它的值和最后一个,当您处于更改功能范围时,可以使用 this 。见下文
$(function() {
$('#select').change(function() {
$('#update_price').val("£" + $(this).val());
});
});
答案 2 :(得分:2)
一种解决方案是将Pound符号放在选择框中选项的值标记中。
<option value="€ 6.65">NY, 10", £6.65</option>
但是使用此值计算时可能会出现问题。 Nicer如下:
$('input[name=update_price]').val("€"+$("#select :selected").val() );
我的键盘上没有英镑符号,因此€:)
<强> //修改
<input type='hidden' name='shopping_cart_value' value='0'>
$('input[name=update_price]').val("€"+$("#select :selected").val() );
$('input[name=shopping_cart_value]').val($("#select :selected").val() );
答案 3 :(得分:2)