我想在不同的文本字段中写入值(rhodes和java)

时间:2013-09-25 03:51:52

标签: javascript rhodes

我正在使用rhostudio创建移动应用。目前我确实有这种代码

<div data-role="page">

<script type="text/javascript">
function call(harga,nama){

var quantity=prompt("Insert Quantity");
var pri=harga;
var nam="document.form1."+nama;
alert("unit price RM" + pri+".00");
price= quantity * pri;
alert(quantity);
alert("total price RM" + price+".00");
alert("total price RM" + price+".00" + " should be displayed into " + nam +"  textfield");
document.form1."name".value = quantity;
nam.value = quantity;
document.form1."name".value = "RM " + price;
// document.form1.hidden3.value = nam;
}
</script>

<div data-role="header" data-position="inline">
<h1>Displays</h1>
<a href="<%= Rho::RhoConfig.start_path %>" class="ui-btn-left" data-icon="home" data-direction="reverse" <%= "data-ajax='false'" if is_bb6 %>>
  Home
</a>
<a href="<%= url_for :action => :new %>" class="ui-btn-right" data-icon="plus">
  New
</a>
</div>

<div data-role="content">

  <form name="form1">
  <table>
                   <tr align="center">
                   <td>Product</td>
                   <td>Quantity</td>
                   <td>Total Price</td></tr>
  <% @products.each do |product| %>
                   <tr align="center">
                   <td><%= product.name %></td>
                   <td><input type="text" name="<%= product.name %>" value="textfield <%= product.name %>"></td>
                   <td><input type="text" name="<%= product.price %>" value="textfield <%= product.price %>"></td>
                   </tr>
    <% end %>
                   </table>
<br/>
  <br/>

  <% @products.each do |product| %>


    <input type="hidden" value="price :<%= product.price %>" name="harga"/>
    <input type="button" onclick="call(<%= product.price%>,value);" name="Press" value="<%= product.name %>">




  <% end %>





  </form>
 </div>

</div>

我按下一个按钮后调用了一个函数调用。每个文本字段都有不同的名称和value.same转到按钮的值,值作为函数调用的参数。它决定将在call()函数中计算的结果写入特定的文本字段。不幸的是,它没有!帮帮我......

每个文本字段都有不同的名称,它基于创建的对象。因为我已经根据对象的数量创建了许多textfilelds,所以假设有不同的名称并将结果写入该文本字段。但不幸的是,它没有!帮帮我......

1 个答案:

答案 0 :(得分:0)

你在代码人身上犯了很多错误。不知道你想要达到什么目的。

如果您只想将product.priceproduct.name的值传递给call函数,请尝试使用

<input type="button" onclick="call('<%= product.price %>','<%= product.price %>');" value="Press" />

然后在下面的函数中,

function call(harga,nama){

    var quantity=prompt("Insert Quantity");
    quantity = isNaN(parseFloat(quantity)) ? 0 : parseFloat(quantity);
    var pri = isNaN(parseFloat(harga)) ? 0 : parseFloat(harga);
    alert("unit price RM" + pri);
    var price= quantity * pri;
    alert("total price : " + price);

    // specify your rest code over here 

}

希望这会对你有所帮助。