关于json问题救急。
由于特定需要,把语言包写到数据库中,然后从数据库中读取出来生成json对象,而另一个封装的函数则需要使用其中一个值。
例:
<script>
function fn(options){
for(var e in options.buttons){
alert(e + " : " + options.buttons[e].id);
}
} var Langs = {PopupOK: '确定', PopupGiveup: '放弃', PopupCancel: '取消'};
fn({
buttons: {
Langs.PopupOK : {
id: 'btnOk',
className: 'css'
}
}
});
</script>
以上Langs.PopupOK 有问题,如果换成"确定"则可以,但我不能写死,如何达到我要求? 急.....
由于特定需要,把语言包写到数据库中,然后从数据库中读取出来生成json对象,而另一个封装的函数则需要使用其中一个值。
例:
<script>
function fn(options){
for(var e in options.buttons){
alert(e + " : " + options.buttons[e].id);
}
} var Langs = {PopupOK: '确定', PopupGiveup: '放弃', PopupCancel: '取消'};
fn({
buttons: {
Langs.PopupOK : {
id: 'btnOk',
className: 'css'
}
}
});
</script>
以上Langs.PopupOK 有问题,如果换成"确定"则可以,但我不能写死,如何达到我要求? 急.....
function fn(options){
for(var e in options.buttons){
alert(e + " : " + options.buttons[e].id);
}
} var Langs = {PopupOK: '确定', PopupGiveup: '放弃', PopupCancel: '取消'};
var paras = {}
for(var o in Langs){
paras[Langs[o]] = {id:o, className:'css'}
}
fn({
buttons: paras
});
</script>
function fn(options){
for(var e in options.buttons){
alert(e + " : " + options.buttons[e].id);
}
} var Langs = {PopupOK: '确定', PopupGiveup: '放弃', PopupCancel: '取消'};
var obj = {buttons: {}};
obj.buttons[Langs.PopupOK] = {
id: 'btnOk',
className: 'css'
};
fn(obj);
</script>
不过我觉得如果用ID来做键会比较好
<script>
function fn(options){
for(var e in options.buttons){
alert(e + " : " + options.buttons[e].text);
}
} var Langs = {PopupOK: '确定', PopupGiveup: '放弃', PopupCancel: '取消'};
fn({
buttons: {
btnOk : {
text: Langs.PopupOK,
className: 'css'
}
}
});
</script>
<script>
//var Langs = {PopupOK: '确定', PopupGiveup: '放弃', PopupCancel: '取消'};
var Langs={
PopupOK: {name:'确定' ,id: 'btnOk', className: 'css'},
PopupGiveup:{name:'放弃' ,id: 'btnStop', className: 'css'},
PopupCancel:{name:'取消' ,id: 'btnCancel',className: 'css'},
} alert(Langs.PopupOK.id)
alert(Langs.PopupOK.name)
alert(Langs.PopupOK.className)</script>
<script type="text/javascript">
function fn(options){
for(var e in options.buttons){
alert(e + " : " + options.buttons[e].id);
}
} var Langs = {PopupOK: '确定', PopupGiveup: '放弃', PopupCancel: '取消'};
var obj = {};
obj[Langs.PopupOK] = {
id: 'btnOk',
className: 'css'
};
fn({
buttons: obj
});
/*
fn({
buttons: {
Langs.PopupOK : {
id: 'btnOk',
className: 'css'
}
}
});
*/
</script>
封装的函数已经写好,不想改,所有语言文字不想定义在里面。谢谢mrshelly和各位,就用这种办法了。结账.....