1. 程式人生 > >js中寫html程式碼時引號問題

js中寫html程式碼時引號問題

html中寫js程式碼:

正常寫法(一般情況下):

<input value="" type="button" onclick="alert('OK');" />

其實更好的寫法:

<input value="Test" type="button" onclick="alert(&quot;OK&quot;);" />
因為此時仍是在html管轄範圍內的,所以&quot;會被解析為雙引號


js中寫html程式碼:

	function addarow(){
		var trnum = $("#table_1_id tr").length;
		var trid ="n"+trnum;
		var tr="<tr id="+trid+"><td><input type='button' onclick='console.log('"+trid+"')' value='檢視該行id'></td></tr>";
		$("#table_1_id").append(tr);
	}

這點程式碼相信大家也都看得懂. 
在table中新加一行該行id為 字母n加上總行數 如 n1 (n可以用來區分是否是新加的行)
然後新增一個按鈕,點選時在控制檯打印出該新行的id 
但是這樣寫是不對的!!!會報Uncaught SyntaxError: Unexpected token } 的錯誤
是因為onclick事件是 console.log(  只能解析到第二個單引號號並把它作為結束標誌  
如果寫成 
var tr="<tr id="+trid+"><td><input type='button' onclick='console.log("+trid+")' value='檢視該行id'></td></tr>";

能不能達到想要的效果呢?試下就知道了 結果為:我就不打了直接貼圖吧


但是我真的想獲取新行id該如何處理?總會有解決辦法的

var tr="<tr id="+trid+"><td><input type='button' onclick='console.log(&quot;"+trid+"&quot;)' value='檢視該行id'></td></tr>";
這樣就可以了因為新行新增到html後其實就是上面那張圖的內容,如果加了&quot的話就會變成 console.log(&quot;n1&quot;) 被html解析為  console.log("n1")

這樣就可以正常獲取新行的id了。

還有一種方法就是外部不使用引號

var tr="<tr id="+trid+"><td><input type='button' onclick=console.log('"+trid+"') value='檢視該行id'></td></tr>";



相關推薦

jshtml程式碼引號問題

html中寫js程式碼: 正常寫法(一般情況下): <input value="" type="button" onclick="alert('OK');" /> 其實更好的寫法: <input value="Test" type="button"

jshtml程式碼(onclick引數帶有json物件)

當你傳進去的是字串的時候: 要帶有引號才可以,不然是會報錯的。 當引數是 json 物件時: 用拼接字串的方式構建html,只能拼接字串,物件是沒辦法拼接的。 當進去的是物件時候,

C++程式碼頭腦要有觸發器

新建class時:考慮物件的拷貝語義(copyable?)新建member function時:如果不改變物件狀態,在聲明後面加const(和ruby的!開頭的方法一樣)新建function parameter時:如果是傳值的,而且是複雜物件,儘量使用const ValueT

webstorm 在html頁面javascript程式碼不高亮問題

今天突然發現在webstorm寫javascript程式碼,沒有高亮,如在html頁面中寫window.onload = function() {}; 結果window成灰色狀態,滑鼠放在上面顯示un

js判斷 .html() 是否為空

bsp emp prot gpo lac pre proto html function String.prototype.isEmpty = function () { var s1 = this.replace(/[\r\n]/g, ‘‘).replace(/[

js拼接html,替換頁面原來死資料

$(function(){         //alert(4444);             //待派單    //$('#sendOrders').click(fu

JS動態寫入HTML程式碼《變數,方法,函式多個入參拼接》

寫這篇文章,主要是想mark一下,因為JS動態生成HTML(這裡都預設是生成大段的HTML,而不是簡單的標籤元素),常用的兩種語法格式: 一種是es6的寫法,反撇,' `` ',在英文語法輸入狀態下,esc正下方的按鍵。但是這種語法存在相容性的問題,我在移動端的專案中遇到過,使用JQuery,沒

在Linux命令列終端python程式碼的簡單操作

Linux終端中的操作均是使用命令列來進行的。因此,對於小白來說,熟記幾個基本的命令列和使用方法能夠較快的在Linux命令列環境中將python用起來。 開啟命令列視窗 開啟命令列視窗的快捷鍵如下: Ctrl + Alt + t 關閉名命令列視窗 關閉命令列視窗的快捷鍵如下:

js操作html的元素

如何在js中找到網頁中的元素: 1.獲取頁面中的標籤元素,獲取到元素後,在js中是一種元素物件, js對這種物件會提供一些操作元素的屬性和方法; 2.grtElementById 表示在文件中通過元素的id屬性值來獲取元素,引數是字串, 直接寫值,不需要加上#號

Vue插入HTML程式碼的方法

我們需要吧<p>Hello World</p>插入到<p>My name is Pjee</p>應該如何做? 一、使用v-html v-html:更新元素的 innerHTML const text = `<p&

用vimpython程式碼的一些配置

本文轉自https://blog.csdn.net/lord_is_layuping/article/details/7706874?utm_source=blogxgwz6 關鍵是使Vim在發現所編輯的檔案是Python檔案時自動載入python的縮排檔案。預設的縮排方式很爛

js使用HTML模板字串

一、簡介 在實際專案中,難免會遇到在js中動態拼接html的程式碼,這樣雖然比較簡單,但是相對來說不太好維護,後期如果改了html結構,那麼js改動的東西會比較多。如下程式碼就是動態拼接html的不太好的程式碼: var html = '<a class="weui-cell weui

我在匯入我們老師程式碼,他是用的學生機,是win7系統,然後我匯入到eclipse,發現專案裡面中文都變成了問號形式的亂碼。

我在匯入我們老師寫的程式碼時,他是用的學生機,是win7系統,然後我匯入到eclipse時,發現專案裡面中文都變成了問號形式的亂碼。 我按照別人的指引修改把工作空間的編碼格式改為UTF-8,還有Java檔案也改成了UTF-8,然後還是沒有成功,最後得到老師指引,他說要跟單獨檔案修改resource改

前端二:js更新html

根據id document.getElementById("name").innerHTML="hello!"; 更新id為name的結點的內容: <p class="name" id="name"></p> 根據class $('.

請問一下向eclipse貼上html程式碼的問題

在向eclipse中貼上html程式碼的時候,發現了不能自動在雙引號後面加上斜線的問題,但是貌似只有我不行,......  現在我只有猜想是我的eclipse版本不支援... "<!DOCTYPE html>\r\n"                 + "&l

jsp檔案Java程式碼報錯

今天學習Java web的時候寫了個簡單的jsp檔案,裡面寫了兩句Java程式碼,沒想到居然報錯了: 報的錯誤是: 然後百度了一下,發現很多的原因都和我不一樣的,最後還是從以前的一本舊書JA

js獲取當前年月日分秒

function getNowDate() { var date = new Date(); this.year = date.getFullYear(); this.month = date.getMonth() + 1; this.dat

Servlet向htmlhtml標籤,有時會遇到html標籤無效

response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); out.println("<h2>上傳物品成功,但是暫時無法上傳圖片,此功能管理員正在開發&

Js動態追加程式碼後,之前定義的Js不再起作用

 問題描述:在js檔案中使用javaScript或者jQuery中的html('程式碼')或者append('程式碼'),將我們的html程式碼動態新增到指定的容器裡面(例如:table)後,頁面可以正常顯示,但是所追加部分的頁面的js會失效。 解決方法:採用JQuery中的 de

VS2015基礎 建立HTML程式碼的專案

       慈心積善融學習,技術願為有情學。善心速造多好事,前人栽樹後乘涼。我今於此寫經驗,願見文者得啟發。這個專案需要在一個單獨的資料夾裡,因為網頁需要很多素材的。這個專案需要在一個單獨的資料夾裡,