0

下面是来自form.js...的Jquery代码

$(document).ready(function() {
    var requiredFlag = ' * ';
    var requiredKey = $('input.required:first').next('span').text();
    requiredKey = requiredFlag + requiredKey.replace(/^\((.+)\)$/,"$1");
    var conditionalFlag = ' ** ';
    var conditionalKey = $('input.conditional:first').next('span').text();
    conditionalKey = conditionalFlag + conditionalKey.replace(/\((.+)\)/,"$1");

    $('form :input').filter('.required')
                    .next('span').text(requiredFlag).end()
                    .prev('label').addClass('req-label');

    $('form :input').filter('.conditional')
                    .next('span').text(conditionalFlag);

    $('<p></p>').addClass('field-keys')
                .append(requiredKey + '<br />')
                .append(conditionalKey)
                .insertBefore('#contact');
});

我想在按钮单击时调用此文件,该文件位于另一个文件中。我怎样才能做到这一点?

注意:按钮是使用asp.net按钮控件制作的。

提前致谢。

4

2 回答 2

0

你可以使用.getScript()方法。

$(document).ready(function() {
    // within dom ready function
    $('#bton').on('click', function() {
       $.getScript('form.js?' + (new Date()).getTime(), function() {
          // do something after file load
       });
    });
});

在这里,(new Date().getTime())是为了防止缓存问题,#your_button应该用适当的按钮idclass其他选择器替换。

于 2012-08-14T11:04:55.807 回答
0

如果你使用 aspButton那么你需要做 2 个可能性中的 1 个

首先是在Button onClientClick属性中硬编码你的函数,如下所示: <asp:Button runat="server" ID="btnExample" onClientClick=" function() { var requiredFlag = ' * ';var requiredKey = 'input.required:first').next('span').text(); requiredKey = requiredFlag + requiredKey.replace(/^\((.+)\)$/,"$1"); var conditionalFlag = ' ** '; var conditionalKey = $('input.conditional:first').next('span').text(); conditionalKey = conditionalFlag + conditionalKey.replace(/\((.+)\)/,"$1"); $('form :input').filter('.required') .next('span').text(requiredFlag).end() .prev('label').addClass('req-label'); $('form :input').filter('.conditional') .next('span').text(conditionalFlag); $('<p></p>').addClass('field-keys').append(requiredKey + '<br />') .append(conditionalKey) .insertBefore('#contact'); }"/>

或者第二个是写在你的js文件或者script标签里面:

var myFunctionClientClick = function() {
var requiredFlag = ' * ';
var requiredKey = $('input.required:first').next('span').text();
requiredKey = requiredFlag + requiredKey.replace(/^\((.+)\)$/,"$1");
var conditionalFlag = ' ** ';
var conditionalKey = $('input.conditional:first').next('span').text();
conditionalKey = conditionalFlag + conditionalKey.replace(/\((.+)\)/,"$1");

$('form :input').filter('.required')
                .next('span').text(requiredFlag).end()
                .prev('label').addClass('req-label');

$('form :input').filter('.conditional')
                .next('span').text(conditionalFlag);

$('<p></p>').addClass('field-keys')
            .append(requiredKey + '<br />')
            .append(conditionalKey)
            .insertBefore('#contact');}

然后简单地写<asp:Button runat="server" ID="btnExample" onClientClick="myFunctionClientClick"/>

希望能帮助到你:)

于 2012-08-14T11:36:23.480 回答