我有一个变量 PRODUCT_CUSTOM_1_ 和 PRODUCT_NAME_ 。这是假设从正在显示的 html 中获取产品选项。我们有一些包含引号“和”的产品。当我们抓取这些字符串并将其发布到其他地方时,它会在“处被切断。”我要么需要删除“,要么将其包含在我们的其他地方发布。
如何从两个变量中删除或包含“和”到我的隐藏表单 iwantCheckoutForm 中?
产品名称示例:1/8"x 40' 胶带卷 自定义选项示例:1/8"黑色、1/4"红色
var BongoCheckout = {insertForm: function() {
var custom =new Array;
for(i=0;i< qtys.length ;i++){
custom[i]="";
for(j=0;j< $($("td.ys_itemInfo")[i]).children().children().length; j++){
custom[i]= custom[i]+" "+$($($("td.ys_itemInfo")[i]).children().children()[j]).text();
}
$("#iwantCheckoutForm").append('<input type="hidden" name="PRODUCT_ID_'+(i+1)+'" value="'+codes[i]+'">');
$("#iwantCheckoutForm").append('<input type="hidden" name="PRODUCT_NAME_'+(i+1)+'" value="'+items[i]+'">');
$("#iwantCheckoutForm").append('<input type="hidden" name="PRODUCT_PRICE_'+(i+1)+'" value="'+price[i]+'">');
$("#iwantCheckoutForm").append('<input type="hidden" name="PRODUCT_Q_'+(i+1)+'" value="'+qtys[i]+'">');
$("#iwantCheckoutForm").append('<input type="hidden" name="PRODUCT_CUSTOM_1_'+(i+1)+'" value="'+custom[i]+'" /> ');
if (per_item_shipping) {
$('form[name="iwantCheckoutForm"]').append('<input type="hidden" name="PRODUCT_SHIPPING_'+(i+1)+'" value="'+shipping_cost.toString()+'"> ');
} else {
$('form[name="iwantCheckoutForm"]').append('<input type="hidden" name="PRODUCT_SHIPPING_'+(i+1)+'" value="'+shipping_cost_breakdown+'"> ');
}
}}
我知道这是一个重复的问题,但我不太清楚如何在我当前的脚本中实现这 10 多个建议。我似乎无法包含正则表达式参数,以免脚本被破坏。我尝试将其添加到 for 循环中。
for(j=0;j< $($("td.ys_itemInfo")[i]).children().children().length; j++){
custom[i]= custom[i]+" "+$($($("td.ys_itemInfo")[i]).children().children()[j]).text(custom.replace(/\"/g, ""));
}
归咎于我仍然是一个n00b,归咎于我的ADD。我想我只是不知道需要在哪里添加 .replace(/\"/g, "") 因为这段代码似乎对其他人有用。
最佳答案
无需为元素创建 HTML 代码,只需创建元素并设置值即可。这消除了转义字符的所有问题:
$("#iwantCheckoutForm").append(
$('<input>', { type: 'hidden', name: 'PRODUCT_NAME_'+(i+1) }).val(items[i])
);
关于javascript - 使用附加时删除引号或包含引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22078368/