Обновление текстового поля на основе выбора в выпадающем списке с помощью JQuery - проблема со списком доступа - PullRequest
1 голос
/ 24 августа 2011

У меня есть приложение Spring MVC, я использую JSP + JQuery для просмотра, и что мне нужно, на основе выбора поля со списком (который дает мне индекс элемента в списке) для заполнения текстового поля.

listProduct - список продуктов, которые есть в модели

<form:form method="POST" commandName="productForm" name="insertRacun">
<table>
 <tr>
  <td class="ui-widget">Product:</td>
    <td><form:select path="productListId" id="productCombobox">
        <form:options items="${listProduct}"itemLabel="name" itemValue="productId"/>
        </form:select>
    </td>
  <td class="ui-widget">Product price:</td>
                <td><form:input path="priceList"
                        class="ui-widget ui-widget-content" id="priceInput" />
                </td>


<script type="text/javascript">
var comboIndex = $("#productCombobox").val();
$("#priceInput").val(${listProduct[comboIndex].price})      
    });
</script>

Мой вопрос: Когда я помещаю число в listProduct [], то есть listProduct [0], оно работает просто отлично, и поле цены заполняется, но когда яхочу поставить "comboIndex" в скобках, это ничего не делает.

Если есть другое решение (не использующее JQuery), пожалуйста, отправьте его

Ответы [ 2 ]

1 голос
/ 24 августа 2011

Вы смешиваете код клиента и сервера.Вы не можете передать переменную JS в код своего сервера, так как код вашего сервера анализируется до того, как страница передана клиенту.

Вам нужно будет передать клиенту цену, соответствующую определенному идентификатору продукта.другими способами.

0 голосов
/ 24 августа 2011

Соответствующий код (вероятно, в обработчике события изменения ) должен ссылаться на productCombobox selectedIndex вместо:

 var comboIndex = $("#productCombobox").attr("selectedIndex"); //
 $("#priceInput").val(${listProduct[comboIndex].price});     
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...