te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>How to "echo" a text in EJS (a javascript template) to check a radio button - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

How to "echo" a text in EJS (a javascript template) to check a radio button - Stack Overflow

programmeradmin4浏览0评论

I need help I'm using EJS javasript template to write a code snippet two check a radio button depending on data returned from the server. Let say the server returns a json (named my_data) and here is my code

<input type="radio" name="is_public" value=1 <% if(my_data.is_public){ %> <%='checked' %> <% } %> />Public
<input type="radio" name="is_public" value=0 <% if(!my_data.is_public){ %> <%='checked' %> <% } %> />Private

But it doesnt work! the Public is always checked although my_data.is_public = 0.

Any one can help?

btw, are there the way to "echo" a text like this in EJS:

<input type="radio" name="is_public" value=1 <% if(my_data.is_public){ echo 'checked' } %> />Public

I need help I'm using EJS javasript template to write a code snippet two check a radio button depending on data returned from the server. Let say the server returns a json (named my_data) and here is my code

<input type="radio" name="is_public" value=1 <% if(my_data.is_public){ %> <%='checked' %> <% } %> />Public
<input type="radio" name="is_public" value=0 <% if(!my_data.is_public){ %> <%='checked' %> <% } %> />Private

But it doesnt work! the Public is always checked although my_data.is_public = 0.

Any one can help?

btw, are there the way to "echo" a text like this in EJS:

<input type="radio" name="is_public" value=1 <% if(my_data.is_public){ echo 'checked' } %> />Public
Share Improve this question asked Feb 3, 2012 at 3:07 Leo LerdorfLeo Lerdorf 1,3844 gold badges15 silver badges20 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 8

EJS is a simple and easy to use engine, and does not need to put too much learning cost on the template. If you look at the source, you'll find something funny.

// the same as echo string
__append(string)         

So:

<input type="radio" name="is_public" value=1 <% if(my_data.is_public){ __append('checked') } %> />Public

Never used EJS, but from experience from other templating engines, this should work:

<input type="radio" name="is_public" value=1 <% if(my_data.is_public){ %> checked="checked" <% } %> />Public
<input type="radio" name="is_public" value=0 <% if(!my_data.is_public){ %> checked="checked" <% } %> />Private

When you say <%=, you are to output the result of a JavaScript evaluation that follows. E.g. <%= a %> should output the contents of variable a at that time.

There's no need for explicit echo in templates - anything outside <% %> should be echoed by default, of course considering that some blocks are conditionally echoed, like the above if, or may be multiplied when using loops, etc.

发布评论

评论列表(0)

  1. 暂无评论