Javascript 更改提交表单上输入框的值
我有一个问题,我有一个表格有很多输入框。其中一个输入框具有高度,而其单位为厘米/英寸。现在,我的API是这样制作的,当用户提交表单时,输出是基于cm单元的。因此,如果用户选择英寸作为单位并单击“提交”,则我必须将高度框中的值转换为厘米,但不在文本框中显示,然后将该值发送到API调用,而无需再次单击“提交”按钮,因为用户已经这样做了Javascript 更改提交表单上输入框的值,javascript,jquery,html,Javascript,Jquery,Html,我有一个问题,我有一个表格有很多输入框。其中一个输入框具有高度,而其单位为厘米/英寸。现在,我的API是这样制作的,当用户提交表单时,输出是基于cm单元的。因此,如果用户选择英寸作为单位并单击“提交”,则我必须将高度框中的值转换为厘米,但不在文本框中显示,然后将该值发送到API调用,而无需再次单击“提交”按钮,因为用户已经这样做了 <div style="width: 23%; float: left; margin: 0 3% 0 0;"> <
<div style="width: 23%; float: left; margin: 0 3% 0 0;">
<input id="width" type="text" name="width" required="required" />
</div>
<div style="width: 23%; float: left; margin: 0 3% 0 0;">
<input id="height" type="text" name="height"/>
</div>
<div style="width: 22%; float: left;font-weight:300">
<select id="dimension-unit" class="styled" ">
<option name="cm" >cm</option>
<option name="inch" >inch</option>
</select>
我相信你可以这样做:
$("input[type='submit']").click(function(){
//put your code here..
});
创建一个隐藏字段,其高度始终以厘米为单位。然后,使用jQuery,您可以使用onkeyup
事件在可见字段发生更改时更新cm字段。或者-也只需将单位发送到后端,并在那里进行转换(如果需要)。您可以通过以下方式进行转换:
$('#selector').on('submit', function () {
// Your code here
});
或
使用input[type'submit']
作为选择器,并使用单击其上的功能
$("input[type='submit']").click(function(){
// Your code here
});
这可能是您正在寻找的:
$("input[type='submit']").click(function() {
var width, height;
if ($('#dimension-unit').val() === "in") {
width = $('#width').val() * 2.54;
height = $('#height').val() * 2.54;
} else {
width = $('#width').val();
height = $('#height').val();
}
alert("Width: " + width);
alert("Height: " + height);
});
你的问题是什么?$(你的表单选择器)真的吗?为什么在提交表单时,他们可以一次性计算转换?我尝试了上面所有的jquery方法,但当我单击submit时,它总是将原始值发送到API,而不是更改后的值,而我希望它发送新值