如何检查文本框jquery中是否存在文本
我需要检查输入框中是否存在文本,如果检查文本不存在则会附加新数据
我尝试使用以下代码
$(document).ready(function(){
$("#item_inv_desc").change(function(){
var item_inv_desc = $('select[name=item_inv_desc]').val();
if (item_inv_desc == 7)
{
var invoice_number = "123456789";
//I need check if text "CRN" exists in text box
var data=$('#invoice_number:contains("CRN")')
if(data)
{
//if text "CRN" exist no need to append data
}
else
{
//if not exist
$("#invoice_number").val(invoice_number+"CRN");
}
}
});
})
//Html
<input type="text" id="invoice_number" value="">
我在尝试插入附加值时遇到问题,它会在发票号码中添加额外的CRN号码,我需要避免重复,
答案 0 :(得分:1)
使用文本框的includes()
尝试val()
:
var data = $('#invoice_number').val().includes("CRN")
或者,对于旧版浏览器,请使用indexOf()
:
var data = $('#invoice_number').val().indexOf("CRN") !== -1
工作演示:
$(document).ready(function() {
$("#invoice_number").change(function() {
var invoice_number = "123456789";
var data = $('#invoice_number').val().includes("CRN");
if (data) {
} else {
$("#invoice_number").val(invoice_number + "CRN");
}
});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="invoice_number" value="">
答案 1 :(得分:0)
@Manjunath var data = $('#invoice_numbe:contains(“CRN”)')
当你在下面检查时,“r”丢失了 var data = $('#invoice_numbe:contains(“CRN”)')
并使用
var data=$('#invoice_number').val().indexOf("CRN");
if(data>-1){
// donot add CRN
}
答案 2 :(得分:0)
您可以使用正则表达式删除所有数字,并仅从输入文本的值中获取文本。如果您想在按钮上单击,则在click
函数中添加该代码块:
var data = $('#invoice_number').val();
var res = data.replace(/[0-9]/g, '');
console.log(res);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="invoice_number" value="123456789CRN">