0

我正在使用 CKeditor,此代码用于按钮。我将 xml 存储在 Dom 中。我正在尝试将其他函数中的 xml 用于选择框。选择框的代码与此按钮代码类似。当我在选择框中点击一个列表时,我想看到 and 之间的<chr>单词</chr>。我不想<chr>选择一个选项。

type: 'button',
id: 'btnFind',
align: 'left',
style: 'width:100%',
label: 'add',
onClick: function () {
    var y = this.getDialog();
    var value1 = y.getValueOf('replace', 'chgWord');
    var value2 = y.getValueOf('replace', 'title');
    var xml = "<channel><title>" + value1 + "</title><chr>" + value2 + "</chr></channel>",
    xmlDoc = $.parseXML(xml),
    $xml = $(xmlDoc),
    $title = $xml.find("title");
    $("#cke_119_select").append("<option value='" + $title.text() + "'>" + $title.text() + "</option>");
    $title = $xml.find("chr");

这是选择框的代码:

type: 'hbox',
widths: ['200px', '90px'],
children: [{
    type: 'select',
    label: '약어 LIST :',
    size: 5,
    style: 'width:100%',
    labelLayout: 'horizontal',
    id: 'list',
    items: [],
    onClick: function () {

        selValue = $("#cke_119_select option:selected").val();
        selText = $("#cke_119_select option:selected").text();
        selIndex = $("#cke_119_select option").index($("#cke_119_select option:selected"));
        selBox = $("#cke_119_select");
        selOption = selBox.attr("options");

        var y = this.getDialog();
        var value1 = y.setValueOf('replace', 'chgWord');
        value1.setValue(selValue);
4

2 回答 2

1

var是一个 JavaScript 关键字,独立于它的使用位置,您可以随意使用它。

如果你在一个函数中,那么“var”将创建一个局部变量,“no var”将查找作用域链,直到找到变量或到达全局作用域(此时它将创建它)。 https://stackoverflow.com/a/1470494/694325

您甚至已经拥有var这两个 onClick 功能,因此您确实可以并且确实已经使用它。

var xml = "<channel><title>" + value1 + "</title><chr>" + value2 + "</chr></channel>",
    xmlDoc = $.parseXML(xml),
    $xml = $(xmlDoc),
    $title = $xml.find("title");

例如,同时创建四个变量,例如var a=1,b=2,c=3;

var y = this.getDialog();

这与声明变量的方式完全相同。你的问题不在var这里。

看起来您想为richCombo 设置值/值。也许您可以尝试onClick 之类var theValue = this.getValue();的功能。this.setValue("New Value");另外,onClick: function ( value ) { ... alert(value); ...}可能有用。如果要更改项目,请尝试this._.items在 onClick 中访问。如果不知道您正在尝试什么,我无法为您提供更多帮助,对不起!

于 2012-11-07T07:06:36.380 回答
1

如果您var在第一个函数之外声明,则可以在第二个函数中使用该变量

var xml;

function one(){
  xml= "<channel><title>" + value1 + "</title><chr>" + value2 + "</chr></channel>";

}

function two(){
  /* can access xml here that was set in function one*/
}
于 2012-11-07T11:27:49.027 回答