重写这个函数的聪明方法
我有这个,如果用户单击一个按钮,我将显示一个 div,如果用户单击其他按钮,则不会显示它。它有效,但重复这样做是愚蠢的
$j(document).ready(function() {
$j('#Button1').click( function () {
var data = $j("form").serialize();
$j.post('file.php', data, function(response){
$j("#Response").show();
});
});
$j('#Button21').click( function () {
var data = $j("form").serialize();
$j.post('file.php', data, function(response){
//do something else
});
});
});
I have this, and I am showing a div if user clicked one button and not showing it if the user clicked other. Its working but its dumb to do this way with repeatition
$j(document).ready(function() {
$j('#Button1').click( function () {
var data = $j("form").serialize();
$j.post('file.php', data, function(response){
$j("#Response").show();
});
});
$j('#Button21').click( function () {
var data = $j("form").serialize();
$j.post('file.php', data, function(response){
//do something else
});
});
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
我会通过向选定的按钮添加一个类,然后从 click 函数中提取
event.target
id 来完成此操作:I'd do it by adding a class to the selected buttons and then pull the
event.target
id from the click function:您需要从功能中抽象数据。
sendClick 函数
通过这种方式,您可以通过更改选择器和回调来一遍又一遍地重复相同的功能。您可以通过以下方式进一步自定义:
然后使用 like
或
You need to abstract the data from the functionality.
sendClick function
This way you can repeat the same functionality over and over by changing the selector and the callback. You could customise this even further by:
then use like
or
您可以将事件附加到两者,然后,当您需要检查哪个元素触发了事件时,请使用 <代码>事件.目标。
You can attach the event to both, and then, when you need to check which element triggered the event, use
event.target
.这里有两种不同的方法:
您可以将两个处理程序合并为一个处理程序:
或者编写一种特殊类型的处理程序:
...并附加其中两个:
Here are two different ways:
You can combine the two handlers into one handler:
Or write a special kind of handler:
...and attach two of them:
如果不起作用请告诉我。
Let me know if it's not working.