Это последняя проблема, с которой я столкнулся с формой (надеюсь)
Я хочу добавить var size к моему скрытому вводу под названием my-item-имя
Я пытался добавить это
form.find('[name=my-item-name]').append(size.val());
, но это не работает.
Как правильно добавить значение val к входу?
<form method="post" action="" class="jcart">
<fieldset>
<input type="hidden" name="jcartToken" value="13823c48f896c49403465fcce9f135ac" />
<input type="hidden" name="my-item-id" value="12" />
<input type="hidden" name="my-item-price" value="15.99" />
<input type="hidden" name="my-item-url" value="http://yahoo.com" />
<input type="hidden" name="my-item-name" value="Operation Braveheart hooded sweatshirt" />
<ul>
<li>
<select name="my-select" id="foo12">
<option value='Small'>Small</option>
<option value='Medium'>Medium</option>
<option value='Large'>Large</option>
<option value='X-Large'>X-Large</option>
</select>
</li>
<li>Price: $<span id="price12" class="price">15.99</span></li>
<li>
<label>Qty: <input type="text" name="my-item-qty" value="1" size="3" /></label>
</li>
</ul>
<input type="submit" name="my-add-button" value="add to cart" class="button" />
</fieldset>
</form>
<script type="text/javascript">
var item_prices_by_size12 = { "Small": { "Price": "15.99", "ItemId": "9-1" },"Medium": { "Price": "16.99", "ItemId": "9-2" },"Large": { "Price": "17.99", "ItemId": "9-3" },"X-Large": { "Price": "18.99", "ItemId": "9-4" }};
$(function() {
$('#foo12').change(function() {
var form = $(this).parents('form');
// Size is whatever the value the user has selected
var size = $(this).val();
// Determine the correct price and item ID based on the selected size
var price12 = item_prices_by_size12[size].Price,
itemId = item_prices_by_size12[size].ItemId;
form.find('#price12').text(price12);
form.find('[name=my-item-price]').val(price12);
// Update the item ID
form.find('[name=my-item-id]').val(itemId);
form.find('[name=my-item-name]').append(size.val());
});
});
</script>