我有一个ScanField。在这个领域我正在扫描条形码。之后,我正在剪切bardcode-string的最后四个字符并将其提供给hiddenField。当我点击搜索按钮时,从隐藏的字段中,我通过ajax将其传递给php网站。
例如:我正在扫描条形码:隐藏字段中的TWRG000000009102
显示9102
,之后我将值传递给ajax。
Everthing工作正常,但我想自动完成。当隐藏的inputField被填充时,它应该触发一个事件并将值传递给ajax。
我的代码:
<label for="myType">
<select id="myType" name="myType" size="5">
<option value="01">B&C</option>
<option value="02">James Nicholson</option>
<option value="F.O.L">Fruit Of The Loom</option>
<option value="TeeJays">TeeJays</option>
</select>
</label>
<br>
<label for="hiddenField">hiddenField:</label>
<input type="text" name="hiddenField" style="width:300px"><br>
<label for="myScan">Scanfield:</label>
<input type="text" name="myScan" style="width:300px" autofocus>
<button type="submit">Search</button>
<div id="result"></div>
<script>
$(document).ready(function(){
$('input[name=myScan]').on('keypress', function(e){
if(e.which == 13) {
var scanField = $(this).val();
console.log(scanField);
var lastFour = scanField.substr(scanField.length - 4);
$('input[name=hiddenField]').val(lastFour);
}
});
$('button').on('click', function(){
var postForm = {
'myType' : $('#myType').val(),
'myScan' : $('input[name=hiddenField]').val()
};
$.ajax({
url: "index.php",
type: "POST",
data: postForm,
dataType: "text",
success: function(data){
$('#result').html(data);
}
});
});
});
这里是html示例:https://jsfiddle.net/froouf9f/
答案 0 :(得分:0)
将值保存到隐藏字段后,您可以使用以下方法触发按钮点击事件:
$("button").trigger("click");
试试这个:
$('input[name=myScan]').on('keypress', function(e){
if(e.which == 13) {
var scanField = $(this).val();
console.log(scanField);
var lastFour = scanField.substr(scanField.length - 4);
$('input[name=hiddenField]').val(lastFour);
$("button").trigger("click");
}
});