jquery 将下拉框中的值显示到文本框中,如果文本框中已经包含了下拉框的值,则不能添加。
以下是文本域和下拉框<tr><tdclass="pn-flabelpn-flabel-h"><spanstyle="color:red"></span>合约类型:</td...
以下是文本域和下拉框
<tr> <td class="pn-flabel pn-flabel-h" ><span style="color:red"></span>合约类型:</td> <td class="pn-fcontent"> <textarea id="get" cols="40" name="vscommoditycontract.cid" rows="9" required="true" readonly="true" id="get" style="list-style:circle"></textarea> <#if contract?exists> <select id="vsc"> <#list contract as phone> <option value="${phone.id!}" name="${phone.id!}">${phone.name!}</option> </#list> </select> </#if> <span class="pn-fhelp"> 选择手机号码套餐(将手机号码和套餐关联起来,或者将套餐上架)</span> </td> </tr>
效果截图:
一下是我写的jquery,存在问题,求大神指教
$("#vsc").change(function(){ $("#get").val($("#vsc").find("option:selected").text()); alert($("#get").val()); if($("#get").val()==$("#vsc").find("option:selected").text()){ alert("已经包含了此套餐,请选择其他类型"); }else{ $("#get").val($("#vsc").find("option:selected").text()+","+$("#get").val()); } }); 展开
<tr> <td class="pn-flabel pn-flabel-h" ><span style="color:red"></span>合约类型:</td> <td class="pn-fcontent"> <textarea id="get" cols="40" name="vscommoditycontract.cid" rows="9" required="true" readonly="true" id="get" style="list-style:circle"></textarea> <#if contract?exists> <select id="vsc"> <#list contract as phone> <option value="${phone.id!}" name="${phone.id!}">${phone.name!}</option> </#list> </select> </#if> <span class="pn-fhelp"> 选择手机号码套餐(将手机号码和套餐关联起来,或者将套餐上架)</span> </td> </tr>
效果截图:
一下是我写的jquery,存在问题,求大神指教
$("#vsc").change(function(){ $("#get").val($("#vsc").find("option:selected").text()); alert($("#get").val()); if($("#get").val()==$("#vsc").find("option:selected").text()){ alert("已经包含了此套餐,请选择其他类型"); }else{ $("#get").val($("#vsc").find("option:selected").text()+","+$("#get").val()); } }); 展开
3个回答
展开全部
var $get = $('#get');
$('#vsc').change(function(){
var existValue = $get.val(),
selectText = this.options[this.selectedIndex].text,
existPatter = new RegExp(selectText.replace(/[([{\^$|)?*+.\\]/g, function (re) {
return '\\' + re;
}));
if(existPatter.test(existValue)){
alert('已经选择了该套餐');
}else{
$get.val(existValue+selectText+'\r\n');
}
});
展开全部
if($("#get").val()==$("#vsc").find("option:selected").text()){
alert("已经包含了此套餐,请选择其他类型");
}else{
$("#get").val($("#vsc").find("option:selected").text()+","+$("#get").val());
}
这觉得这段改成这样最好了,你这样判断还是不正确的
if($("#get:contains('"+$("#vsc").find("option:selected").text()+"')")){
alert("已经包含了此套餐,请选择其他类型");
}else{
$("#get").val($("#vsc").find("option:selected").text()+","+$("#get").val());
}
alert("已经包含了此套餐,请选择其他类型");
}else{
$("#get").val($("#vsc").find("option:selected").text()+","+$("#get").val());
}
这觉得这段改成这样最好了,你这样判断还是不正确的
if($("#get:contains('"+$("#vsc").find("option:selected").text()+"')")){
alert("已经包含了此套餐,请选择其他类型");
}else{
$("#get").val($("#vsc").find("option:selected").text()+","+$("#get").val());
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这里应该是获取多个,不能重复添加是不是?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询