Javascript 使用jquery在表单中附加2个函数
我有这个html表单Javascript 使用jquery在表单中附加2个函数,javascript,jquery,Javascript,Jquery,我有这个html表单 <form action="upload/" id="upload" name="upload"> // other form data </form> 我的问题是,当我单击href#startupboad时,它附带了$('#upload')。uploadThis({})函数可以工作,但当我单击#startDownload时,它没有附加$('#upload')。下载这个({})函数,并且没有被调用 谢谢您的帮助。您可以根据需要多次执行此操作: $(
<form action="upload/" id="upload" name="upload">
// other form data
</form>
我的问题是,当我单击href#startupboad时,它附带了$('#upload')。uploadThis({})函数可以工作,但当我单击#startDownload时,它没有附加$('#upload')。下载这个({})函数,并且没有被调用
谢谢您的帮助。您可以根据需要多次执行此操作:
$("#startDownload").bind('click', function() {
...
});
您可以任意多次执行此操作:
$("#startDownload").bind('click', function() {
...
});
我不确定想要的行为到底是什么,但是改变元素的ID总是会带来同样的问题 您正在这样做:
$(function() {
$('#upload').uploadThis({
// other code here
});
});
$(function() {
$('#download').downloadThis({
// other code here
});
});
$()
是$(document.ready()的简写形式代码>
问题是,当您准备好文档时,它将执行上面的两个处理程序,但那时,只有ID为upload的元素存在,$(“#下载”)
实际上是一个空选择
您可以调用$('#upload')。上载this()
和$('#download')。在各自的中下载this()
。更改ID后单击()
$("#startUpload").click(function( {
$("form")
.attr({ 'action': 'upload/', 'id': 'upload' })
.uploadThis(...);
});
注意:如果这些插件是您自己编写的,请确保它们不会在每次调用时初始化
希望我足够清楚:o)我不确定想要的行为到底是什么,但更改元素的ID总是会带来同样的问题
您正在这样做:
$(function() {
$('#upload').uploadThis({
// other code here
});
});
$(function() {
$('#download').downloadThis({
// other code here
});
});
$()
是$(document.ready()的简写形式代码>
问题是,当您准备好文档时,它将执行上面的两个处理程序,但那时,只有ID为upload的元素存在,$(“#下载”)
实际上是一个空选择
您可以调用$('#upload')。上载this()
和$('#download')。在各自的中下载this()
。更改ID后单击()
$("#startUpload").click(function( {
$("form")
.attr({ 'action': 'upload/', 'id': 'upload' })
.uploadThis(...);
});
注意:如果这些插件是您自己编写的,请确保它们不会在每次调用时初始化
希望我足够清楚:o)您正在尝试在元素存在于DOM之前绑定它们。。。这是行不通的
$("#startUpload").click(function( {
$("form").attr('action','upload/').attr('id','upload').submit(function() {
$(this).uploadThis({
//other code here
});
);
});
$("#startDownload").click(function( {
$("form").attr('action','download/').attr('id','download').submit(function() {
$(this).downloadThis({
//other code here
});
);
});
这样,您将在submit form事件中绑定所需的操作。可能会解决您的问题。您正在尝试在DOM上存在元素之前绑定它们。。。这是行不通的
$("#startUpload").click(function( {
$("form").attr('action','upload/').attr('id','upload').submit(function() {
$(this).uploadThis({
//other code here
});
);
});
$("#startDownload").click(function( {
$("form").attr('action','download/').attr('id','download').submit(function() {
$(this).downloadThis({
//other code here
});
);
});
这样,您将在submit form事件中绑定所需的操作。可能会解决您的问题。一个简单的方法是为表单创建自定义事件,并通过onclick的以下命令触发它们:
$("#startUpload").click(function( {
$("form").trigger('upload');
});
$("#startDownload").click(function( {
$("form").trigger('download');
});
$("form").bind('upload',function(){
$(this).attr('action','upload/').uploadThis();
}).bind('download',function(){
$(this).attr('action','download/').downloadThis();
});
一种简单的方法是为表单创建自定义事件,并通过onclick的以下命令触发它们:
$("#startUpload").click(function( {
$("form").trigger('upload');
});
$("#startDownload").click(function( {
$("form").trigger('download');
});
$("form").bind('upload',function(){
$(this).attr('action','upload/').uploadThis();
}).bind('download',function(){
$(this).attr('action','download/').downloadThis();
});
.click()
是的缩写。bind('click',…)
。click()
是的缩写。bind('click',…)
您的代码遗漏了很多}
和)
。你应该纠正它,这样更容易理解。什么也是.uploadThis({…})
应用于jquery对象?一些插件?谢谢Didier,实际上上面的代码我只是为了演示而写的,实际的代码很长,所以我想如果我能用上面的代码得到逻辑的话。Regardsher是我正在使用的实际代码,它是一个进度条插件。Regardsy您的代码遗漏了很多}
和)
。你应该纠正它,这样更容易理解。什么也是.uploadThis({…})
应用于jquery对象?一些插件?谢谢Didier,实际上上面的代码我只是为了演示而写的,实际的代码很长,所以我想如果我能用上面的代码得到逻辑的话。Regardsher是我正在使用的实际代码,它是一个进度条插件。谢谢,先生,是的,我现在明白了,#下载不在文档中,所以它没有运行,如果我只附加到,您上面的逻辑将工作。单击事件,但在页面加载上,我必须初始化$(“#上载”)。上载此()一次。感谢您的输入我刚刚用上述方法在submit按钮中添加了所有函数,全部修复,再次感谢谢谢您,先生,是的,我现在了解到,#下载不在文档中,所以它没有运行,如果我只附加到,您上面的逻辑将起作用。单击事件,但在页面加载时,我必须初始化$('#upload')。上载此()一次。谢谢你的输入我刚刚用上面的方法在提交按钮中添加了所有功能,所有功能都已修复,再次感谢Hank先生,我测试了这个方法,它按预期工作。这是我的实际代码,现在我还想在页面加载时上载this(),我将如何实现它?关于汉克先生,我测试了这个方法,它的效果和预期的一样。这是我的实际代码,现在我还想在页面加载时上载this(),我将如何实现它?当做