0

我目前有一个程序,如果我在左侧更改设置,它会在右侧自动更改。所以你可以预览你在做什么。

文本将自动显示在每个keyup. 因此,当您键入时,您会看到预览的外观。

我目前这样调用我的 Javascript 函数。

"#chapter_form_number"然后是表单输入的 ID。

$("#chapter_form_number").bind("mouseup" , {key: 'chapter_display_number'} ,    chapter_generate_num);
$("#chapter_form_title").bind("keyup" , {key: 'chapter_display_title'} ,    generate_text);

// Number gen Chapter
function chapter_generate_num(dest){
    var dest = dest.data.key;
    var number = $(this);   
    $("#" + dest).html(number.val());
}

// change text
function generate_text(dest){
    var text = $(this); 
    var dest = dest.data.key;
    $("#" + dest).html(text.val());
}

在此处输入图像描述

但它只在我keyupmouseup输入时改变。我希望它在加载时也会改变一次。所以它至少加载一次输入。所以我试图把它准备好,eventType但这不起作用。

有什么建议可以解决这个问题吗?

$("#chapter_form_number").bind( "mouseup ready" , {key: 'chapter_display_number'} ,     chapter_generate_num);
$("#chapter_form_title").bind("keyup ready" ,   {key: 'chapter_display_title'} ,    generate_text);
4

2 回答 2

3

采用.trigger( eventType [, extraParameters ] )

$("#chapter_form_number")
    .bind("mouseup" , {key: 'chapter_display_number'}, chapter_generate_num)
    .trigger("mouseup");
$("#chapter_form_title")
    .bind("keyup" , {key: 'chapter_display_title'}, generate_text)
    .trigger("keyup");
于 2013-04-02T11:32:58.320 回答
0

您需要使用适当的上下文(this对象)调用这两个函数。试试这个

$(function() {
     chapter_generate_num.apply($("#chapter_form_number")[0], [{data: {key: 'chapter_display_number'}}])
     generate_text.apply($("#chapter_form_title")[0], [{data: {key: 'chapter_display_title'}}])    
})

我假设这两个函数是全局的,并且在 onload 事件之前定义。

于 2013-04-02T11:34:07.077 回答