我搜索了我的这个问题,无法找到答案,所以我在这里问这可能是一个愚蠢的问题。
这是我的代码。
function addCategory(data_type,header){
categoryDialog = $("<div id='parentcategoryDiv'>" +
'*header* Name<input type="text" id="categoryText" name="categoryText" style="width: 300px;" placeholder="Program Type"/>' +
'<br/>' +
'<br/>' +
'<input type="submit" name="saveCategory" value="Save" id="saveCategory" class="right" onclick="saveCategory(*data_type*);">' +
'<input type="submit" name="cancelCategory" value="Cancel" id="cancelCategory" class="right" onclick="closeDialog();">' +
"</div>");
categoryDialog.dialog({
title: 'Add/Edit '+header,
maxWidth:500,
maxHeight: 100,
width: 500,
height: 100,
draggable: true,
autoOpen: false,
modal: true
});
categoryDialog.dialog('open');
$("body").on("click", ".ui-widget-overlay", function () {
closeDialog();
});
};
header和data_type是两个传递的参数。但问题是我无法在html填充变量中使用这些参数(header和data_type)。有办法吗?任何帮助表示赞赏。
答案 0 :(得分:2)
将参数传递给onclick函数时,可能是字符串连接问题。试试这个,我使用转义字符来保留单引号,以便传递的参数将作为字符串传递给onclick方法;试试这个,让我知道它是否有效!
function addCategory(data_type,header){
categoryDialog = $("<div id='parentcategoryDiv'>" +
''+header+' Name<input type="text" id="categoryText" name="categoryText" style="width: 300px;" placeholder="Program Type"/>' +
'<br/>' +
'<br/>' +
'<input type="submit" name="saveCategory" value="Save" id="saveCategory" class="right" onclick="saveCategory(\''+data_type+'\');">' +
'<input type="submit" name="cancelCategory" value="Cancel" id="cancelCategory" class="right" onclick="closeDialog();">' +
"</div>");
console.log(categoryDialog);
categoryDialog.dialog({
title: 'Add/Edit '+header,
maxWidth:500,
maxHeight: 100,
width: 500,
height: 100,
draggable: true,
autoOpen: false,
modal: true
});
categoryDialog.dialog('open');
$("body").on("click", ".ui-widget-overlay", function () {
closeDialog();
});
};