php 与 jquery中$.post()与attr()方法的简单实例 amaze modal 模态窗口
$(selector).attr(attribute,value)
$.post()
在jqery中有这样一个方法,$.post()下面就这个方法做一个简单的实例:
jQuery.post( url, [data], [callback], [type] ) :
使用POST方式来进行异步请求
参数:
url (String) : 发送请求的URL地址.
data (Map) : (可选) 要发送给服务器的数据,以 Key/value 的键值对形式表示。
callback (Function) : (可选) 载入成功时回调函数(只有当Response的返回状态是success才是调用该方法)。
type (String) : (可选)官方的说明是:Type of data to be sent。其实应该为客户端请求的类型(JSON,XML,等等)
<ul class="am-tabs-nav am-nav am-nav-tabs">
<li class="am-active"><a href="#true" onclick="set('true')">出售中</a></li>
<li><a href="#false" onclick="set('false')"
class="<{if $status =='false'}>am-text-danger<{/if}>">已下架</a></li>
</ul> '#email').val(),address:$('#address').val()},
<script type="text/javascript">
function set(value){
$.post("<{link app=subsales ctl=wap_subshop act=products}>", { type: value},
function(data){
}, "json");
}
</script>
<button type="button" class="am-btn am-btn-primary js-modal-open">打开 Modal</button>
<button type="button" class="am-btn am-btn-secondary js-modal-close">关闭 Modal</button>
<button type="button" class="am-btn am-btn-danger js-modal-toggle">Toggle Modal</button> <div class="am-modal am-modal-no-btn" tabindex="-1" id="your-modal">
<div class="am-modal-dialog">
<div class="am-modal-hd">Modal 标题
<a href="javascript: void(0)" class="am-close am-close-spin" data-am-modal-close>×</a>
</div>
<div class="am-modal-bd">
Modal 内容。
</div>
</div>
</div>
<script>
$(function() {
var $modal = $('#your-modal'); $modal.siblings('.am-btn').on('click', function(e) {
var $target = $(e.target);
if (($target).hasClass('js-modal-open')) {
$modal.modal();
} else if (($target).hasClass('js-modal-close')) {
$modal.modal('close');
} else {
$modal.modal('toggle');
}
});
});
</script>
弹框效果
上述代码是amaze ui里的一个弹窗效果,该功能符合要求。

问题。现在对每个商品中《推广》要求都有弹窗效果,因为每个产品都有不一样的id,所以上述js需要进行处理,每个产品推广,都写一个js?,答案肯定是no,思考,如何高效,只用一个js方法来实现呢?
方法,因为每个产品的id不一样所以可以,那个产品需要请求弹框就需要发送一次请求,异步处理,后台输出产品所对应的信息
代码
后台代码:根据产品id来获取产品对应的信息
//生成二维码
function qrcode_image()
{ $product_id = $_POST['product_id'];
// $url ="http://www.taifengmall.com".$this->gen_url(array('app' => 'subsales', 'ctl' => 'wap_subshop', 'act' => 'product', 'args' => array($product_id)));
$url = kernel::base_url(1).$this->gen_url(array('app' => 'subsales', 'ctl' => 'wap_subshop', 'act' => 'product', 'args' => array($product_id)));
$qrcode_image_id = kernel::single('weixin_qrcode')->generate($url, '10');
$img = base_storager::image_path($qrcode_image_id, 's');
echo $img; }
html 代码
问题:例如< img id="xxx" src=" xxx"/> 其中如何替换src图片的链接呢?
方法,$(selector).attr(attribute,value)设置被选元素的属性和值
<a data-am-modal="{target: '#q-img-modal'}" class="am-btn am-btn-xs" href="javascript:;" onclick="setimg('<{$product.product_id}>')">
推广
</a>
<div class="am-popup" id="q-img-modal">
<div class="am-popup-inner">
<div class="am-popup-hd">
<h4 class="am-popup-title">长按二维码图片保存发送</h4>
<span data-am-modal-close class="am-close">×</span>
</div>
<div class="am-popup-bd am-text-center">
<img id="t-img" src="" class="am-img-responsive"/>
</div>
</div>
</div>
<script type="text/javascript">
function setimg(value){
$.post("<{link app=subsales ctl=wap_subshop act=qrcode_image}>", { product_id:value},
function(data){
$('#t-img').attr('src',data);//替换代码信息
$('#q-img-modal').modal(options);//弹窗
}, "text");
}
function set(value){
$.post("<{link app=subsales ctl=wap_subshop act=products}>", { type: value},
function(data){
}, "json");
}
</script>
效果
php 与 jquery中$.post()与attr()方法的简单实例 amaze modal 模态窗口的更多相关文章
- jquery 实践操作:attr()方法
此篇要记录的是 关于 jquery 的 attr() 方法 在JS中设置节点的属性与属性值用到setAttribute(),获得节点的属性与属性值用到getAttribute(),而在jquery中 ...
- jQuery通用的全局遍历方法$.each()用法实例
1.jQuery通用的全局遍历方法$.each()用法 2. test.json文件代码: 3. html代码 4.jQuery代码 <script src="jquery-1.3.1 ...
- 使用jQuery的".css()"和".attr()"方法设置元素"left"属性的注意点
今天在使用jQuery方法".css()"设置"ajax-loader.gif"的位置时出了点小状况,关键代码如下(为了简化,这里假定要给"ajax- ...
- jQuery的prop和attr方法之间区别
JQuery.attr(): Get the value of an attribute for the first element in the set of matched elements. J ...
- jquery中prop()与attr()方法的区别
一.prop() 简单来说是当需要判断真假时使用,如复选框时: if( $(this).prop('checked')){ //当返回true时在这里调用 }else{ //当返回false时在这里调 ...
- jquery中$.post()方法的简单实例
在jqery中有这样一个方法,$.post()下面就这个方法做一个简单的实例: jQuery.post( url, [data], [callback], [type] ) :使用POST方式来进行异 ...
- JavaScript数组的五个迭代方法的简单实例
<script> //every() var nums = [1,2,3,4,5]; var result = nums.every(function eve(item,index,arr ...
- java 工厂方法模式简单实例
工厂方法模式:也叫工厂模式,属于类创建型模式,工厂父类(接口)负责定义产品对象的公共接口,而子类工厂则负责创建具体的产品对象. 目的:是为了把产品的实例化操作延迟到子类工厂中完成,通过工厂子类来决定究 ...
- JBox - 模态窗口,工具提示和消息 jQuery 插件
jBox 是一个强大而灵活的 jQuery 插件,可以帮助实现模态窗口,工具提示,通知和更多的功能.你可以使用 jQuery 选择器轻松地添加工具提示效果到元素上,您可以以同样的方式设置模态窗口.该库 ...
随机推荐
- Android学习笔记--存储方案(SharedPreference、文件IO)
1. SharedPreference SharedPreference可以很容易的保存key-value对,通常用于保存配置信息.保存的步骤 1. 获得SharedPreferences对象 (最后 ...
- NGINX小技巧--将所有目录和目录下所有文件分别给与不同的权限
为了安全,有时要将文件的权限进行限制,但,目录如果没有755,则不能进入. 所以需要分别给权限 find ./ -type f -name "*" |xargs ls -l
- 工控主板EM9161对ISO7816协议的支持
在当前的金融POS终端及相关领域,ISO7816通讯协议得到了广泛应用.英创的工控主板EM9161,可在其异步串口的基础上,通过简单的设置,就可把串口转为符合ISO7816协议的接口,实现与各种智能卡 ...
- SWF加解密资源索引之加密混淆篇【转】
============================ SWF加解密资源索引之加密混淆篇 ============================ [心得] swf加密混淆器(带源码) http:/ ...
- ssh秘钥交换详解与实现 diffie-hellman-group-exchange-sha
ssh的DH秘钥交换是一套复合几种算法的秘钥交换算法.在RFC4419中称为diffie-hellman-groupX-exchange-shaX 的算法(也有另一种单纯的 rsaX-shaX 交换算 ...
- DHTML【8】--CSS
在讲HTML时说过,有个Style标签是在CSS里用的,是的,在HTML中添加CSS样式必须要用到Style,在标签里单独定义标签属性时用的是Style属性.上一节我们也说过,先不用管那个Style标 ...
- eclipse中使用loadrunner java api步骤
1.使用Eclipse新建一个Java工程,名字任意 2.将"%LoadRunner_Home%\classes\lrapi"目录拷贝到工程中 3.将工程导出为Jar包,譬如:命名 ...
- JMeter数据库性能测试
要测试一个服务器的性能,客户要求向数据库内 1000/s(每插入一千条数据)的处理能力 前提条件:一个数据库:test 数据库下面有一张表:user 表中有两个字段:username.pass ...
- BNU10806:请在此处签到
每年圣诞,ZUN都会邀请很多人到幻想乡举行联欢,今年也不例外.在联欢前,所有人需要在自己的昵称旁签到(签全名),以示出席.然后ZUN 会把大家的签到表保存下来作为纪念,以激励来年努力工作. 昵称: ...
- 破解Veeam过程
1)运行Veeam_Backup_Setup.exe,但是不要继续下一步: 2)进入到%temp%\IXP000.TMP目录,例如windows xp sp3环境默认为C:\Documents and ...