[英]how to set value to input textbox jquery
我有一個帶有文本框列的表,我想獲取舊值並將其設置為onchange
文本框。
<span class="txt_b">
<input type="number" name="" value="<?php echo $req; ?>" onchange="onChangeTest(this)" onchange="setoldvalue(this)" oldvalue="" class="input_md radious_all innershadow padding_control" id ="tk" style="width:60px;" id="qty_req_<?php echo $i; ?>" onblur="editBucket('<?php echo $row_id; ?>','<?php echo $item['Item']['code']; ?>',$('#qty_war_<?php echo $i; ?>').val(),this.value,'<?php echo $date; ?>',$('#stock_notes_<?php echo $i; ?>').val(),'<?php echo $item['Item']['pack_size']; ?>')"/>
</span>
</div>
<input type="hidden" name="product" id="qty_reqty_" class="product" value="qty_reqty_<?php echo $i; ?>" />
</div>
<script>
function getoldvalue()
{
$('input').on('focusin', function(){
console.log("Saving value " + $(this).val());
$(this).data('val', $(this).val());
});
$('input').on('change', function(){
var prev = $(this).data('val');
$('input').val(prev);
console.log(s);
var current = $(this).val();
console.log("Prev value " + prev);
console.log("New value " + current);
});
我正在努力將值設置為文本框。 如何通過id
呢?
這是我的jQuery對話框
函數editCart(id,code,stock_wh,stock_rq,date,notes,pack){
if((stock_rq%pack) != 0){
$('<div></div>').appendTo('body')
.html('<div id="dialog"><h3>The quantity should be multiple of pack size, do you wish to continue with the quantity entered?</h3></div>')
.dialog({
modal: true,
title: 'message',
zIndex: 10000,
autoOpen: true,
width: 'auto',
resizable: true,
buttons: {
Yes: function () {
doFunctionForYes();
$(this).dialog("close");
},
No: function () {
doFunctionForNo();
$(this).dialog("close");
}
},
close: function (event, ui) {
$(this).remove();
}
});
$('#msg').hide();
function doFunctionForYes() {
$('#msg').show();
}
function doFunctionForNo() {
alert("doFunctionForNo");
});
}
}
您在定義html時遇到了一些問題:
您可以將data-oldvalue屬性設置為輸入,並使用jQuery訪問該屬性
<input type="text" id="qty_req_<?php echo $i; ?>" data-oldvalue="<?php echo $req; ?>" />
<script>
$( document ).ready(function() {
oldvalue = $("#qty_req_<?php echo $i; ?>").data('oldvalue');
});
</script>
jQuery代碼僅用於示例,您可以在需要的任何地方使用此代碼
首先,只有在擁有html5
,才可以使用$(this).data
來保存值。 所以我剛剛將其添加為$(this).attr('data-val')
。 現在的問題是,即使您輸入任何新內容,您始終具有舊值作為input
value
,並且在將input value
更改為舊value
后獲得了current value
value
。 當您登錄console.log(s)
,還存在一個undefined
錯誤,因為s
並未在任何地方定義。
$('input').on('focus', function() { $('body').append("<br/>Saving value " + $(this).val()); $(this).attr('data-val', $(this).val()); }); $('input').on('change', function() { var prev = $(this).data('val'); var current = $(this).val(); $(this).val(prev); console.log("Prev value " + prev); console.log("New value " + current); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div> <span class="txt_b"> <input type="number" name="" value="20" class="input_md radious_all innershadow padding_control" id ="tk" style="width:60px;" id="qty_req_<?php echo $i; ?>"/> </span> </div> <input type="hidden" name="product" id="qty_reqty_" class="product" value="qty_reqty_<?php echo $i; ?>" />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.