如何在JavaScript中限制追加字符串?
在delete如何在JavaScript中限制追加字符串?,javascript,button,append,Javascript,Button,Append,在deleteonclick事件上调用JavaScript函数,将在单击OK时返回确认按钮消息Yes 问题是,当第二次单击时,它将附加下一个字符串 例如:Yes,Yes JavaScript function Confirm() { var confirm_value confirm_value = document.createElement("INPUT"); confirm_value.type = "hidden"; confirm_value.nam
onclick
事件上调用JavaScript函数,将在单击OK
时返回确认按钮消息Yes
问题是,当第二次单击时,它将附加下一个字符串
例如:Yes,Yes
JavaScript
function Confirm() {
var confirm_value
confirm_value = document.createElement("INPUT");
confirm_value.type = "hidden";
confirm_value.name = "confirm_value";
if (confirm("Are you sure want to delete supplier?")) {
confirm_value.value = "Yes";
}
else {
confirm_value.value = "No";
}
document.forms[0].appendChild(confirm_value);
}
解释
JavaScript确认方法将用户提供的输入存储在动态创建的隐藏字段中,即,如果按下OK
,则将存储值Yes
,如果按下Cancel
,则将存储值No
,以便将用户输入传递到服务器端代码
然后,它将允许按钮执行正常回发并引发OnClick
事件
问题
如何将追加限制为该值?最好的方法是设置一个布尔标志,在第一次设置值后,该标志将被设置为
true
var yourBoolean = false;
if (confirm("Are you sure want to delete supplier?")) {
yourBoolean = true;
if (yourBoolean === true) {
confirm_value.value = "Yes";
}
}
只需给元素一个ID,并在下次检查该ID
function Confirm() {
var id = "confirm_value",
confirm_value = document.getElementById("confirm_value");
if ( !confirm_value ) {
confirm_value = document.createElement("input");
confirm_value.type = "hidden";
confirm_value.name = id;
confirm_value.id = id;
document.forms[0].appendChild(confirm_value);
}
confirm_value.value = confirm("Are you sure want to delete supplier?") ? "Yes" : "No";
}
你能创建一个快速片段吗?因为我不理解你的问题,所以会更容易;)Thxy您应该首先检查输入是否已经存在,以及是否只是编辑值而不是添加新元素。抱歉@R.Foubert for没有明确说明。我使用
onclick
event在delete上调用JavaScript函数。当我单击“删除后代码”按钮时,它会显示确认框消息,当我单击“确定”时,它会像往常一样返回Yes
。但第二次单击Ok时,它会追加字符串,例如:Yes,Yes
。我的问题是如何限制附加它?但为什么需要innput字段?“是”是什么意思?你到底想删除什么?您应该提供一个片段;)答案对你有帮助吗?我相信最后的编辑回答了你的问题@R.Foubert。我希望如此。